<?xml version="1.0" encoding="ascii"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 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>&nbsp;&nbsp;&nbsp;<a
        href="TestON-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>

  <!-- Tree link -->
      <th>&nbsp;&nbsp;&nbsp;<a
        href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>

  <!-- Index link -->
      <th>&nbsp;&nbsp;&nbsp;<a
        href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>

  <!-- Help link -->
      <th>&nbsp;&nbsp;&nbsp;<a
        href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>

      <th class="navbar" width="100%"></th>
  </tr>
</table>
<table width="100%" cellpadding="0" cellspacing="0">
  <tr valign="top">
    <td width="100%">
      <span class="breadcrumbs">
        <a href="TestON-module.html">Package&nbsp;TestON</a> ::
        <a href="TestON.drivers-module.html">Package&nbsp;drivers</a> ::
        <a href="TestON.drivers.common-module.html">Package&nbsp;common</a> ::
        <a href="TestON.drivers.common.cli-module.html">Package&nbsp;cli</a> ::
        Module&nbsp;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&nbsp;private</a>]</span></td></tr>
        <tr><td align="right"><span class="options"
            >[<a href="frames.html" target="_top">frames</a
            >]&nbsp;|&nbsp;<a href="TestON.drivers.common.cli.emulatordriver-pysrc.html"
            target="_top">no&nbsp;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-keyword">import</tt> <tt class="py-name">pexpect</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">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="L9"></a><tt class="py-lineno"> 9</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">sys</tt> </tt>
<a name="L10"></a><tt class="py-lineno">10</tt>  <tt class="py-line"><tt class="py-name">sys</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-name">append</tt><tt class="py-op">(</tt><tt class="py-string">"../"</tt><tt class="py-op">)</tt> </tt>
<a name="L11"></a><tt class="py-lineno">11</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="L12"></a><tt class="py-lineno">12</tt>  <tt class="py-line"> </tt>
<a name="Emulator"></a><div id="Emulator-def"><a name="L13"></a><tt class="py-lineno">13</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="L14"></a><tt class="py-lineno">14</tt>  <tt class="py-line">    <tt class="py-comment"># The common functions for emulator included in emulatordriver</tt> </tt>
<a name="Emulator.__init__"></a><div id="Emulator.__init__-def"><a name="L15"></a><tt class="py-lineno">15</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="L16"></a><tt class="py-lineno">16</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.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.iniparser.iniparser.__init__()=TestON.core.iniparser.iniparser-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.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.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.emulatordriver.Emulator.__init__()=TestON.drivers.common.cli.emulatordriver.Emulator-class.html#__init__,Method TestON.drivers.common.cli.remotesys.hpswitchdriver.HPSwitchDriver.__init__()=TestON.drivers.common.cli.remotesys.hpswitchdriver.HPSwitchDriver-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.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.drivers.common.webdriver.WebDriver.__init__()=TestON.drivers.common.webdriver.WebDriver-class.html#__init__,Method TestON.drivers.component.Component.__init__()=TestON.drivers.component.Component-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.DpctlTest.DpctlTest.DpctlTest.__init__()=TestON.tests.DpctlTest.DpctlTest.DpctlTest-class.html#__init__,Method TestON.tests.FvtTest.FvtTest.FvtTest.__init__()=TestON.tests.FvtTest.FvtTest.FvtTest-class.html#__init__,Method TestON.tests.HPSwitchTest.HPSwitchTest.HPSwitchTest.__init__()=TestON.tests.HPSwitchTest.HPSwitchTest.HPSwitchTest-class.html#__init__,Method TestON.tests.MininetTest.MininetTest.MininetTest.__init__()=TestON.tests.MininetTest.MininetTest.MininetTest-class.html#__init__,Method TestON.tests.PoxTest.PoxTest.PoxTest.__init__()=TestON.tests.PoxTest.PoxTest.PoxTest-class.html#__init__,Method TestON.tests.TicketBooking.TicketBooking.TicketBooking.__init__()=TestON.tests.TicketBooking.TicketBooking.TicketBooking-class.html#__init__,Method TestON.tests.VyattaTest.VyattaTest.VyattaTest.__init__()=TestON.tests.VyattaTest.VyattaTest.VyattaTest-class.html#__init__"><a title="TestON.bin.cli.CLI.__init__
TestON.bin.cli.TestThread.__init__
TestON.bin.generatedriver.GenerateDriver.__init__
TestON.bin.updatedriver.UpdateDriver.__init__
TestON.bin.vyatta.Vyatta.__init__
TestON.core.iniparser.iniparser.__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.controllerdriver.Controller.__init__
TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__
TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__
TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__
TestON.drivers.common.cli.emulatordriver.Emulator.__init__
TestON.drivers.common.cli.remotesys.hpswitchdriver.HPSwitchDriver.__init__
TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__
TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__
TestON.drivers.common.cli.toolsdriver.Tools.__init__
TestON.drivers.common.clidriver.CLI.__init__
TestON.drivers.common.webdriver.WebDriver.__init__
TestON.drivers.component.Component.__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.DpctlTest.DpctlTest.DpctlTest.__init__
TestON.tests.FvtTest.FvtTest.FvtTest.__init__
TestON.tests.HPSwitchTest.HPSwitchTest.HPSwitchTest.__init__
TestON.tests.MininetTest.MininetTest.MininetTest.__init__
TestON.tests.PoxTest.PoxTest.PoxTest.__init__
TestON.tests.TicketBooking.TicketBooking.TicketBooking.__init__
TestON.tests.VyattaTest.VyattaTest.VyattaTest.__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></div><a name="L17"></a><tt class="py-lineno">17</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>&nbsp;&nbsp;&nbsp;<a
        href="TestON-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>

  <!-- Tree link -->
      <th>&nbsp;&nbsp;&nbsp;<a
        href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>

  <!-- Index link -->
      <th>&nbsp;&nbsp;&nbsp;<a
        href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>

  <!-- Help link -->
      <th>&nbsp;&nbsp;&nbsp;<a
        href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>

      <th class="navbar" width="100%"></th>
  </tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
  <tr>
    <td align="left" class="footer">
    Generated by Epydoc 3.0.1 on Mon Mar 11 12:56:27 2013
    </td>
    <td align="right" class="footer">
      <a target="mainFrame" href="http://epydoc.sourceforge.net"
        >http://epydoc.sourceforge.net</a>
    </td>
  </tr>
</table>

<script type="text/javascript">
  <!--
  // Private objects are initially displayed (because if
  // javascript is turned off then we want them to be
  // visible); but by default, we want to hide them.  So hide
  // them unless we have a cookie that says to show them.
  checkCookie();
  // -->
</script>
</body>
</html>
