def setUp(self): self.t = LogProcessor(options={'colour':True, 'debug':False}) self.setup_logger()
class TestLogParse(Harness): def setUp(self): self.t = LogProcessor(options={'colour':True, 'debug':False}) self.setup_logger() def process_log(self, name): path = os.path.join(test_dir, 'latex', name) try: self.t.process_log(path + os.path.extsep + 'testlog') finally: self.output = self.logfile.read().decode('utf8') def test_error(self): self.process_log('error') self.assert_contains(r'%sUndefined control sequence \nonexistingmacro.' % colours['error']) def test_ref(self): self.process_log('ref') self.assert_contains("undefined") self.assert_contains("nonexistent") self.assert_contains('There were undefined references.', -1) ## self.assert_contains(ref_warning, -4) self.assert_contains(colours['error'], -2) def test_box(self): self.t.options['suppress_box_warning'] = False self.process_log('box') self.assert_contains('Overfull') self.assert_contains(colours['box']) self.assert_contains('p.1') def test_twice_label(self): self.process_log('twicelabel') self.assert_contains(colours['warning'], 0) self.assert_contains("Label `label' multiply defined", 0) self.assert_contains("There were multiply-defined labels", 1) self.assert_contains(colours['error'], 1) def test_cite(self): self.process_log('cite') self.assert_contains('citation') self.assert_contains(colours['error']) ## def test_no_tmp_dif(self): ## self.t.typeset_file('simple') def test_nobox(self): self.process_log('box') self.assertNotIn('Overfull', self.output) def test_unicode_missing(self): self.t.xetex = True self.setup_logger() self.process_log('unicode') print((self.output)) def test_colours(self): self.process_log('cite') self.assert_contains('citation', line=0, regexp=False) self.assert_contains(colours['error'], line=0) def test_nostyle(self): self.t.options['colour'] = False self.setup_logger() self.process_log('cite') self.assert_contains('[citation]', line=0, regexp=False) def test_encoding(self): self.setup_logger() self.process_log('encoding')
def setUp(self): self.t = LogProcessor(options={'colour': True, 'debug': False}) self.setup_logger()
#!/usr/bin/env python """Helper for Xelatex log parsing.""" from pydflatex import LogProcessor if __name__ == "__main__": l = LogProcessor() l.process_log('bin/ThesisRomainBrault.log')
class TestLogParse(Harness): def setUp(self): self.t = LogProcessor(options={'colour': True, 'debug': False}) self.setup_logger() def process_log(self, name): path = os.path.join(test_dir, 'latex', name) try: self.t.process_log(path + os.path.extsep + 'testlog') finally: self.output = self.logfile.read().decode('utf8') def test_error(self): self.process_log('error') self.assert_contains(colours['error']) self.assert_contains(r'Undefined control sequence \nonexistingmacro.') def test_ref(self): self.process_log('ref') self.assert_contains("undefined") self.assert_contains("nonexistent") self.assert_contains('There were undefined references.', -1) ## self.assert_contains(ref_warning, -4) self.assert_contains(colours['error'], -2) def test_box(self): self.t.options['suppress_box_warning'] = False self.process_log('box') self.assert_contains('Overfull') self.assert_contains(colours['box']) self.assert_contains('p.1') def test_twice_label(self): self.process_log('twicelabel') self.assert_contains(colours['warning'], 0) self.assert_contains("Label `label' multiply defined", 0) self.assert_contains("There were multiply-defined labels", 1) self.assert_contains(colours['error'], 1) def test_cite(self): self.process_log('cite') self.assert_contains('citation') self.assert_contains(colours['error']) ## def test_no_tmp_dif(self): ## self.t.typeset_file('simple') def test_nobox(self): self.process_log('box') self.assertNotIn('Overfull', self.output) def test_unicode_missing(self): self.t.xetex = True self.setup_logger() self.process_log('unicode') print(self.output) def test_colours(self): self.process_log('cite') self.assert_contains('citation', line=0, regexp=False) self.assert_contains(colours['error'], line=0) def test_nostyle(self): self.t.options['colour'] = False self.setup_logger() self.process_log('cite') self.assert_contains('[citation]', line=0, regexp=False) def test_encoding(self): self.setup_logger() self.process_log('encoding')