From 69bf10dc2b1c021b3bc9019e81f02da4d65a098d Mon Sep 17 00:00:00 2001 From: jeetiss Date: Mon, 23 Sep 2019 11:40:37 +0300 Subject: [PATCH 1/3] add test --- test.js | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/test.js b/test.js index 210713c..99a8b36 100644 --- a/test.js +++ b/test.js @@ -269,7 +269,7 @@ test('reset frameIndex when setting new spinner', async t => { t.regex(stripAnsi(await output), /foo baz/); }); -test('reset interval when setting new spinner', t => { +test('set the correct interval when changing spinner (object case)', t => { const spinner = new Ora({ isEnabled: false, spinner: {frames: ['foo', 'bar']}, @@ -283,6 +283,20 @@ test('reset interval when setting new spinner', t => { t.is(spinner.interval, 200); }); +test('set the correct interval when changing spinner (string case)', t => { + const spinner = new Ora({ + isEnabled: false, + spinner: 'dots', + interval: 100 + }); + + t.is(spinner.interval, 100); + + spinner.spinner = 'layer'; + + t.is(spinner.interval, 150); +}); + test('throw when incorrect spinner', t => { const ora = new Ora(); From 062f9098dbd41453815b3bde015436c51ba6e328 Mon Sep 17 00:00:00 2001 From: jeetiss Date: Mon, 23 Sep 2019 11:43:43 +0300 Subject: [PATCH 2/3] set the correct interval when changing spinner * all cases :) --- index.js | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/index.js b/index.js index 71a9352..a372fce 100644 --- a/index.js +++ b/index.js @@ -59,6 +59,12 @@ class Ora { this._indent = indent; } + updateInterval(interval) { + if (interval !== undefined) { + this.interval = interval; + } + } + get spinner() { return this._spinner; } @@ -71,10 +77,6 @@ class Ora { throw new Error('The given spinner must have a `frames` property'); } - if (spinner.interval !== undefined) { - this.interval = spinner.interval; - } - this._spinner = spinner; } else if (process.platform === 'win32') { this._spinner = cliSpinners.line; @@ -86,6 +88,8 @@ class Ora { } else { throw new Error(`There is no built-in spinner named '${spinner}'. See https://github.com/sindresorhus/cli-spinners/blob/master/spinners.json for a full list.`); } + + this.updateInterval(this._spinner.interval); } get text() { From 68d609ef78d8eb29241b18392ac27769179fa4db Mon Sep 17 00:00:00 2001 From: Sindre Sorhus Date: Mon, 23 Sep 2019 15:54:13 +0700 Subject: [PATCH 3/3] Update index.js --- index.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/index.js b/index.js index a372fce..024b5fe 100644 --- a/index.js +++ b/index.js @@ -59,7 +59,7 @@ class Ora { this._indent = indent; } - updateInterval(interval) { + _updateInterval(interval) { if (interval !== undefined) { this.interval = interval; } @@ -89,7 +89,7 @@ class Ora { throw new Error(`There is no built-in spinner named '${spinner}'. See https://github.com/sindresorhus/cli-spinners/blob/master/spinners.json for a full list.`); } - this.updateInterval(this._spinner.interval); + this._updateInterval(this._spinner.interval); } get text() {