mirror of
https://github.com/prymitive/karma
synced 2026-05-05 03:16:51 +00:00
Rewrite progress.js as CommonJS, add tests
This commit is contained in:
@@ -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;
|
||||
|
||||
17
assets/static/progress.test.js
Normal file
17
assets/static/progress.test.js
Normal file
@@ -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();
|
||||
});
|
||||
Reference in New Issue
Block a user