| var test = require('tap').test |
| var spinner = require('../spin.js') |
| |
| test('does nothing when not a tty', function(t) { |
| var int = spinner({ |
| stream: { write: function(c) { |
| throw new Error('wrote something: ' + JSON.stringify(c)) |
| }, isTTY: false }, |
| }) |
| t.notOk(int) |
| t.end() |
| }) |
| |
| test('write spinny stuff', function(t) { |
| var output = '' |
| var written = 0 |
| var expect = "b\u001b[0Gc\u001b[0Gd\u001b[0Ge\u001b[0Gf\u001b[0Gg\u001b[0Gh\u001b[0Gi\u001b[0Gj\u001b[0Gk\u001b[0Gl\u001b[0Gm\u001b[0Gn\u001b[0Go\u001b[0Gp\u001b[0Ga\u001b[0Gb\u001b[0Gc\u001b[0Gd\u001b[0Ge\u001b[0Gf\u001b[0Gg\u001b[0Gh\u001b[0Gi\u001b[0Gj\u001b[0Gk\u001b[0Gl\u001b[0Gm\u001b[0Gn\u001b[0Go\u001b[0Gp\u001b[0Ga\u001b[0Gb\u001b[0Gc\u001b[0Gd\u001b[0Ge\u001b[0Gf\u001b[0Gg\u001b[0Gh\u001b[0Gi\u001b[0Gj\u001b[0Gk\u001b[0Gl\u001b[0Gm\u001b[0Gn\u001b[0Go\u001b[0Gp\u001b[0Ga\u001b[0Gb\u001b[0Gc\u001b[0G" |
| |
| var int = spinner({ |
| interval: 0, |
| string: 'abcdefghijklmnop', |
| stream: { |
| write: function(c) { |
| output += c |
| if (++written == 50) { |
| t.equal(output, expect) |
| clearInterval(int) |
| t.end() |
| } |
| }, |
| isTTY: true |
| }, |
| cleanup: false |
| }) |
| }) |