def test_title(self): stream = TemporaryFile() f = formatters.TerminfoFormatter(stream, 'xterm+sl', True, 'ascii') f.title('TITLE') stream.seek(0) self.assertEqual(compatibility.force_bytes('\x1b]0;TITLE\x07'), stream.read())
def test_title(self): stream = TemporaryFile() try: f = formatters.TerminfoFormatter(stream, 'xterm+sl', True, 'ascii') except curses.error: pytest.skip("xterm+sl not in terminfo db") f.title('TITLE') stream.seek(0) assert b'\x1b]0;TITLE\x07' == stream.read()
def test_title(self): stream = TemporaryFile() try: f = formatters.TerminfoFormatter(stream, 'xterm+sl', True, 'ascii') except curses.error: raise SkipTest("xterm+sl not in terminfo db") f.title('TITLE') stream.seek(0) self.assertEqual(b'\x1b]0;TITLE\x07', stream.read())
def test_terminfo(self): esc = '\x1b[' stream = TemporaryFile() f = formatters.TerminfoFormatter(stream, 'ansi', True, 'ascii') f.autoline = False for inputs, output in (((f.bold, 'bold'), (esc, '1m', 'bold', esc, '0;10m')), ((f.underline, 'underline'), (esc, '4m', 'underline', esc, '0;10m')), ((f.fg('red'), 'red'), (esc, '31m', 'red', esc, '39;49m')), ((f.fg('red'), 'red', f.bold, 'boldred', f.fg(), 'bold', f.reset, 'done'), (esc, '31m', 'red', esc, '1m', 'boldred', esc, '39;49m', 'bold', esc, '0;10m', 'done')), ((42, ), ('42', )), (('\N{SNOWMAN}', ), ('?', ))): self._test_stream(stream, f, inputs, output) f.autoline = True self._test_stream(stream, f, ('lala', ), ('lala', '\n'))
def test_terminfo_hates_term(self): stream = TemporaryFile() with pytest.raises(formatters.TerminfoHatesOurTerminal): formatters.TerminfoFormatter(stream, term='dumb')
def test_unsupported_term(self): stream = TemporaryFile() with pytest.raises(formatters.TerminfoUnsupported): formatters.TerminfoFormatter(stream, term='dumb')