mirror of
https://github.com/atlanticbiomedical/biomedjs.git
synced 2025-07-02 00:47:26 -04:00
Added node-modules
This commit is contained in:
104
node_modules/moment/tasks/zones.js
generated
vendored
Normal file
104
node_modules/moment/tasks/zones.js
generated
vendored
Normal file
@ -0,0 +1,104 @@
|
||||
var path = require('path'),
|
||||
nodeunit = require('nodeunit'),
|
||||
moment = require('../moment');
|
||||
|
||||
|
||||
module.exports = function (grunt) {
|
||||
// placeholder for an array of timezones
|
||||
var ALL_ZONES,
|
||||
INITIAL_ZONE,
|
||||
|
||||
done;
|
||||
|
||||
/******************************
|
||||
Grunt task
|
||||
******************************/
|
||||
|
||||
grunt.registerTask('zones', 'Run the unit tests in different timezones.', function () {
|
||||
done = this.async();
|
||||
getCurrentTimezone(function (zone) {
|
||||
// save the initial timezone so we dont break our computers
|
||||
INITIAL_ZONE = zone;
|
||||
getAllTimezones(function (zones) {
|
||||
// store all the timezones
|
||||
ALL_ZONES = zones;
|
||||
// start running the tests
|
||||
nextTest(function () {
|
||||
// reset the timezone like nothing ever happened
|
||||
resetTimezone();
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
/******************************
|
||||
Timezones
|
||||
******************************/
|
||||
|
||||
function resetTimezone() {
|
||||
setTimezone(INITIAL_ZONE, function () {
|
||||
grunt.log.writeln("Resetting timezone back to " + INITIAL_ZONE);
|
||||
done();
|
||||
});
|
||||
}
|
||||
|
||||
function getCurrentTimezone(cb) {
|
||||
grunt.util.spawn({
|
||||
cmd: "systemsetup",
|
||||
args: ["gettimezone"]
|
||||
}, function (err, result, code) {
|
||||
cb(result.stdout.replace('Time Zone: ', ''));
|
||||
});
|
||||
}
|
||||
|
||||
function getAllTimezones(cb) {
|
||||
grunt.util.spawn({
|
||||
cmd: "systemsetup",
|
||||
args: ["listtimezones"]
|
||||
}, function (err, result, code) {
|
||||
var zones = result.stdout.replace('Time Zones:', '');
|
||||
zones = zones.match(/\S+/g);
|
||||
cb(zones);
|
||||
});
|
||||
}
|
||||
|
||||
function setTimezone(zone, cb) {
|
||||
grunt.util.spawn({
|
||||
cmd: "systemsetup",
|
||||
args: ["settimezone", zone]
|
||||
}, function (err, result, code) {
|
||||
cb();
|
||||
});
|
||||
}
|
||||
|
||||
/******************************
|
||||
Tests
|
||||
******************************/
|
||||
|
||||
function nextTest(cb) {
|
||||
var zone = ALL_ZONES.pop();
|
||||
if (zone) {
|
||||
setTimezone(zone, function () {
|
||||
testZone(zone, function () {
|
||||
nextTest(cb);
|
||||
});
|
||||
});
|
||||
} else {
|
||||
cb();
|
||||
}
|
||||
}
|
||||
|
||||
function testZone(zone, cb) {
|
||||
grunt.util.spawn({
|
||||
cmd: "grunt",
|
||||
args: ["zone"]
|
||||
}, function (err, result, code) {
|
||||
if (err) {
|
||||
resetTimezone();
|
||||
throw err;
|
||||
}
|
||||
console.log(result.stdout);
|
||||
cb();
|
||||
});
|
||||
}
|
||||
};
|
Reference in New Issue
Block a user