def test_valid_output(): with open(TESTFILE) as fp: tokensource = list(PythonLexer().get_tokens(fp.read())) fmt = LatexFormatter(full=True, encoding='latin1') handle, pathname = tempfile.mkstemp('.tex') # place all output files in /tmp too old_wd = os.getcwd() os.chdir(os.path.dirname(pathname)) tfile = os.fdopen(handle, 'wb') fmt.format(tokensource, tfile) tfile.close() try: import subprocess po = subprocess.Popen(['latex', '-interaction=nonstopmode', pathname], stdout=subprocess.PIPE) ret = po.wait() output = po.stdout.read() po.stdout.close() except OSError as e: # latex not available pytest.skip(str(e)) else: if ret: print(output) assert not ret, 'latex run reported errors' os.unlink(pathname) os.chdir(old_wd)
def test_valid_output(self): tokensource = list(PythonLexer().get_tokens(file( os.path.join(testdir, testfile)).read())) fmt = LatexFormatter(full=True) handle, pathname = tempfile.mkstemp('.tex') # place all output files in /tmp too old_wd = os.getcwd() os.chdir(os.path.dirname(pathname)) tfile = os.fdopen(handle, 'w+b') fmt.format(tokensource, tfile) tfile.close() try: try: import subprocess ret = subprocess.Popen(['latex', '-interaction=nonstopmode', pathname], stdout=subprocess.PIPE).wait() except ImportError: # Python 2.3 - no subprocess module ret = os.popen('latex -interaction=nonstopmode "%s"' % pathname).close() if ret == 32512: raise OSError # not found except OSError: # latex not available pass else: self.failIf(ret, 'latex run reported errors') os.unlink(pathname) os.chdir(old_wd)
def test_valid_output(self): fp = open(TESTFILE) try: tokensource = list(PythonLexer().get_tokens(fp.read())) finally: fp.close() fmt = LatexFormatter(full=True, encoding='latin1') handle, pathname = tempfile.mkstemp('.tex') # place all output files in /tmp too old_wd = os.getcwd() os.chdir(os.path.dirname(pathname)) tfile = os.fdopen(handle, 'wb') fmt.format(tokensource, tfile) tfile.close() try: import subprocess po = subprocess.Popen(['latex', '-interaction=nonstopmode', pathname], stdout=subprocess.PIPE) ret = po.wait() output = po.stdout.read() po.stdout.close() except OSError: # latex not available pass else: if ret: print output self.assertFalse(ret, 'latex run reported errors') os.unlink(pathname) os.chdir(old_wd)
def test_correct_output(): with open(TESTFILE) as fp: tokensource = list(PythonLexer().get_tokens(fp.read())) hfmt = LatexFormatter(nowrap=True) houtfile = StringIO() hfmt.format(tokensource, houtfile) assert r'\begin{Verbatim}' not in houtfile.getvalue() assert r'\end{Verbatim}' not in houtfile.getvalue()
def test_valid_output(self): tokensource = list(PythonLexer().get_tokens(open(TESTFILE).read())) fmt = LatexFormatter(full=True, encoding='latin1') handle, pathname = tempfile.mkstemp('.tex') # place all output files in /tmp too old_wd = os.getcwd() os.chdir(os.path.dirname(pathname)) tfile = os.fdopen(handle, 'wb') fmt.format(tokensource, tfile) tfile.close() try: import subprocess ret = subprocess.Popen( ['latex', '-interaction=nonstopmode', pathname], stdout=subprocess.PIPE).wait() except OSError: # latex not available pass else: self.failIf(ret, 'latex run reported errors') os.unlink(pathname) os.chdir(old_wd)
def format(self, tokensource, outfile): LatexFormatter.format(self, self._filter_tokens(tokensource), outfile)