Exemple #1
0
 def call2(self, *args):
     for arg in args:
         self.assertTrue(isinstance(arg, fsnative))
     old_stdout = sys.stdout
     old_stderr = sys.stderr
     try:
         out = StringIO()
         err = StringIO()
         sys.stdout = out
         sys.stderr = err
         try:
             ret = self._main([fsnative(self.TOOL_NAME)] + list(args))
         except SystemExit as e:
             ret = e.code
         ret = ret or 0
         out_val = out.getvalue()
         err_val = err.getvalue()
         if os.name == "nt" and PY2:
             encoding = getattr(sys.stdout, "encoding", None) or "mbcs"
             out_val = text_type(out_val, encoding)
             err_val = text_type(err_val, encoding)
         return (ret, out_val, err_val)
     finally:
         sys.stdout = old_stdout
         sys.stderr = old_stderr
Exemple #2
0
 def _run(self, path):
     old_stdout = sys.stdout
     stream = StringIO()
     try:
         sys.stdout = stream
         for dirpath, dirnames, filenames in os.walk(path):
             for filename in filenames:
                 if filename.endswith('.py'):
                     pyflakes.checkPath(os.path.join(dirpath, filename))
     finally:
         sys.stdout = old_stdout
     lines = stream.getvalue()
     if lines:
         raise Exception(lines)
Exemple #3
0
 def call(self, *args):
     for arg in args:
         assert isinstance(arg, str)
     old_stdout = sys.stdout
     try:
         out = StringIO()
         sys.stdout = out
         try:
             ret = self._main([self.TOOL_NAME] + list(args))
         except SystemExit as e:
             ret = e.code
         ret = ret or 0
         return (ret,  out.getvalue())
     finally:
         sys.stdout = old_stdout
Exemple #4
0
 def call(self, *args):
     for arg in args:
         assert isinstance(arg, (str, bytes))
     old_stdout = sys.stdout
     try:
         out = StringIO()
         sys.stdout = out
         try:
             ret = self._main([self.TOOL_NAME] + list(args))
         except SystemExit as e:
             ret = e.code
         ret = ret or 0
         return (ret, out.getvalue())
     finally:
         sys.stdout = old_stdout
Exemple #5
0
    def readfp(self, fp, *args, **kwargs):
        stream = StringIO()

        try:
            stream.name = fp.name
        except AttributeError as e:
            pass

        stream.write('[' + self._default_section + ']\n')
        stream.write(fp.read())
        stream.seek(0, 0)

        return self._read(stream, stream.name)
Exemple #6
0
def capture_output():
    """
    with capture_output() as (stdout, stderr):
        some_action()
    print stdout.getvalue(), stderr.getvalue()
    """

    err = StringIO()
    out = StringIO()
    old_err = sys.stderr
    old_out = sys.stdout
    sys.stderr = err
    sys.stdout = out

    try:
        yield (out, err)
    finally:
        sys.stderr = old_err
        sys.stdout = old_out
Exemple #7
0
    def readfp(self, fp, *args, **kwargs):
        stream = StringIO()

        try:
            stream.name = fp.name
        except AttributeError as e:
            pass

        stream.write('[' + self._default_section + ']\n')
        stream.write(fp.read())
        stream.seek(0, 0)

        return self._read(stream, stream.name)
Exemple #8
0
 def call2(self, *args):
     for arg in args:
         self.assertTrue(isinstance(arg, fsnative))
     old_stdout = sys.stdout
     old_stderr = sys.stderr
     try:
         out = StringIO()
         err = StringIO()
         sys.stdout = out
         sys.stderr = err
         try:
             ret = self._main([fsnative(self.TOOL_NAME)] + list(args))
         except SystemExit as e:
             ret = e.code
         ret = ret or 0
         out_val = out.getvalue()
         err_val = err.getvalue()
         if os.name == "nt" and PY2:
             encoding = getattr(sys.stdout, "encoding", None) or "mbcs"
             out_val = text_type(out_val, encoding)
             err_val = text_type(err_val, encoding)
         return (ret, out_val, err_val)
     finally:
         sys.stdout = old_stdout
         sys.stderr = old_stderr