UNPKG

vt

Version:

terminal emulation library for javascript.

42 lines (40 loc) 1.17 kB
require('./common'); var TermBuffer = Terminal.TermBuffer; var TermWriter = Terminal.TermWriter; function newTermWriter(w, h) { var t = new TermBuffer(w, h), tw = new TermWriter(t); t.setMode('crlf', true); return tw; } describe('TermWriter SGI', function() { it("resets attributes", function() { var t = newTermWriter(); t.write("\x1b[1mbb\x1b[mn"); var line = t.buffer.getLine(0); expect(line.str).to.be('bbn'); expect(line.attr[0].bold).to.be(true); expect(line.attr[1]).to.be(undefined); expect(line.attr[2].bold).to.be(false); }); it("sets bold", function() { var t = newTermWriter(); t.write("\x1b[1mb"); var line = t.buffer.getLine(0); expect(line.str).to.be('b'); expect(line.attr[0].bold).to.be(true); }); it("sets foreground color", function() { var t = newTermWriter(); t.write("\x1b[38;5;123mb"); var line = t.buffer.getLine(0); expect(line.str).to.be('b'); expect(line.attr[0].fg).to.be(123); }); it("sets background color", function() { var t = newTermWriter(); t.write("\x1b[48;5;124mb"); var line = t.buffer.getLine(0); expect(line.str).to.be('b'); expect(line.attr[0].bg).to.be(124); }); });