From 39204ea2737ff79e657789639ec75a9ded427fe3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C5=81ukasz=20Mierzwa?= Date: Thu, 20 Jul 2017 22:33:59 -0700 Subject: [PATCH] Rewrite progress.js as CommonJS, add tests --- assets/static/progress.js | 83 +++++++++++++++------------------- assets/static/progress.test.js | 17 +++++++ 2 files changed, 54 insertions(+), 46 deletions(-) create mode 100644 assets/static/progress.test.js diff --git a/assets/static/progress.js b/assets/static/progress.js index 343400740..8a593a28d 100644 --- a/assets/static/progress.js +++ b/assets/static/progress.js @@ -1,53 +1,44 @@ -/* globals NProgress */ // nprogress.js +const NProgress = require("nprogress"); -/* globals Unsee */ +var timer; -/* exported Progress */ -var Progress = (function() { +function init() { + NProgress.configure({ + minimum: 0.01, + showSpinner: false, + easing: "linear" + }); +} - var timer; +function resetTimer() { + if (timer !== false) { + clearInterval(timer); + timer = false; + } +} - var init = function() { - NProgress.configure({ - minimum: 0.01, - showSpinner: false, - easing: "linear" - }); - }; +function complete() { + resetTimer(); + NProgress.done(); +} - var resetTimer = function() { - if (timer !== false) { - clearInterval(timer); - timer = false; - } - }; +function pause() { + resetTimer(); + NProgress.set(0.0); +} - var complete = function() { - Progress.ResetTimer(); - NProgress.done(); - }; +function start() { + var stepMs = 250; // animation step in ms + var steps = (Unsee.GetRefreshRate() * 1000) / stepMs; // how many steps we have + NProgress.set(0.0); + resetTimer(); + timer = setInterval(function() { + NProgress.inc(1.0 / steps); + }, stepMs); +} - var pause = function() { - Progress.ResetTimer(); - NProgress.set(0.0); - }; - - var start = function() { - var stepMs = 250; // animation step in ms - var steps = (Unsee.GetRefreshRate() * 1000) / stepMs; // how many steps we have - NProgress.set(0.0); - Progress.ResetTimer(); - timer = setInterval(function() { - NProgress.inc(1.0 / steps); - }, stepMs); - }; - - return { - Init: init, - Pause: pause, - Complete: complete, - Reset: start, - ResetTimer: resetTimer - }; - -}()); +exports.init = init; +exports.pause = pause; +exports.complete = complete; +exports.start = start; +exports.resetTimer = resetTimer; diff --git a/assets/static/progress.test.js b/assets/static/progress.test.js new file mode 100644 index 000000000..d9e2a2992 --- /dev/null +++ b/assets/static/progress.test.js @@ -0,0 +1,17 @@ +const progress = require("./progress"); + +test("progress init()", () => { + progress.init(); +}); + +test("progress resetTimer()", () => { + progress.resetTimer(); +}); + +test("progress complete()", () => { + progress.complete(); +}); + +test("progress pause()", () => { + progress.pause(); +});