parameters: (self, command, timeout=-1)
return_statement: return u''.join(res + [self.child.before])
docstring: Send a command to the REPL, wait for and return output.
  
          :param str command: The command to send. Trailing newlines are not needed.
            This should be a complete block of input that will trigger execution;
            if a continuation prompt is found after sending input, :exc:`ValueError`
            will be raised.
          :param int timeout: How long to wait for the next prompt. -1 means the
            default from the :class:`pexpect.spawn` object (default 30 seconds).
            None means to wait indefinitely.
docstring_summary: Send a command to the REPL, wait for and return output.
docstring_tokens: Send a command to the REPL wait for and return output .
function: def run_command(self, command, timeout=-1):
          """Send a command to the REPL, wait for and return output.
  
          :param str command: The command to send. Trailing newlines are not needed.
            This should be a complete block of input that will trigger execution;
            if a continuation prompt is found after sending input, :exc:`ValueError`
            will be raised.
          :param int timeout: How long to wait for the next prompt. -1 means the
            default from the :class:`pexpect.spawn` object (default 30 seconds).
            None means to wait indefinitely.
          """
          # Split up multiline commands and feed them in bit-by-bit
          cmdlines = command.splitlines()
          # splitlines ignores trailing newlines - add it back in manually
          if command.endswith('\n'):
              cmdlines.append('')
          if not cmdlines:
              raise ValueError("No command was given")
  
          res = []
          self.child.sendline(cmdlines[0])
          for line in cmdlines[1:]:
              self._expect_prompt(timeout=timeout)
              res.append(self.child.before)
              self.child.sendline(line)
  
          # Command was fully submitted, now wait for the next prompt
          if self._expect_prompt(timeout=timeout) == 1:
              # We got the continuation prompt - command was incomplete
              self.child.kill(signal.SIGINT)
              self._expect_prompt(timeout=1)
              raise ValueError("Continuation prompt found - input was incomplete:\n"
                               + command)
          return u''.join(res + [self.child.before])
function_tokens: def run_command ( self , command , timeout = - 1 ) : # Split up multiline commands and feed them in bit-by-bit cmdlines = command . splitlines ( ) # splitlines ignores trailing newlines - add it back in manually if command . endswith ( '\n' ) : cmdlines . append ( '' ) if not cmdlines : raise ValueError ( "No command was given" ) res = [ ] self . child . sendline ( cmdlines [ 0 ] ) for line in cmdlines [ 1 : ] : self . _expect_prompt ( timeout = timeout ) res . append ( self . child . before ) self . child . sendline ( line ) # Command was fully submitted, now wait for the next prompt if self . _expect_prompt ( timeout = timeout ) == 1 : # We got the continuation prompt - command was incomplete self . child . kill ( signal . SIGINT ) self . _expect_prompt ( timeout = 1 ) raise ValueError ( "Continuation prompt found - input was incomplete:\n" + command ) return u'' . join ( res + [ self . child . before ] )