diff options
Diffstat (limited to 'vnfmarket/src/main/webapp/vnfmarket/node_modules/dateformat/test')
5 files changed, 133 insertions, 0 deletions
diff --git a/vnfmarket/src/main/webapp/vnfmarket/node_modules/dateformat/test/test_dayofweek.js b/vnfmarket/src/main/webapp/vnfmarket/node_modules/dateformat/test/test_dayofweek.js new file mode 100644 index 00000000..7f37407c --- /dev/null +++ b/vnfmarket/src/main/webapp/vnfmarket/node_modules/dateformat/test/test_dayofweek.js @@ -0,0 +1,15 @@ +var assert = require('assert'); + +var dateFormat = require('./../lib/dateformat'); + +describe('dayOfWeek', function() { + it('should correctly format the timezone part', function(done) { + var start = 10; // the 10 of March 2013 is a Sunday + for(var dow = 1; dow <= 7; dow++){ + var date = new Date('2013-03-' + (start + dow)); + var N = dateFormat(date, 'N'); + assert.strictEqual(N, String(dow)); + } + done(); + }); +}); diff --git a/vnfmarket/src/main/webapp/vnfmarket/node_modules/dateformat/test/test_formats.js b/vnfmarket/src/main/webapp/vnfmarket/node_modules/dateformat/test/test_formats.js new file mode 100644 index 00000000..df186cae --- /dev/null +++ b/vnfmarket/src/main/webapp/vnfmarket/node_modules/dateformat/test/test_formats.js @@ -0,0 +1,76 @@ +var assert = require('assert'); + +var _ = require('underscore'); + +var dateFormat = require('../lib/dateformat'); + +var expects = { + 'default': 'Wed Nov 26 2014 13:19:44', + 'shortDate': '11/26/14', + 'mediumDate': 'Nov 26, 2014', + 'longDate': 'November 26, 2014', + 'fullDate': 'Wednesday, November 26, 2014', + 'shortTime': '1:19 PM', + 'mediumTime': '1:19:44 PM', + 'longTime': '1:19:44 PM %TZ_PREFIX%%TZ_OFFSET%', + 'isoDate': '2014-11-26', + 'isoTime': '13:19:44', + 'isoDateTime': '2014-11-26T13:19:44%TZ_OFFSET%', + 'isoUtcDateTime': '', + 'expiresHeaderFormat': 'Wed, 26 Nov 2014 13:19:44 %TZ_PREFIX%%TZ_OFFSET%' +}; + +function pad(num, size) { + var s = num + ''; + while (s.length < size) { + s = '0' + s; + } + return s; +} + +function parseOffset(date) { + var offset = date.getTimezoneOffset(); + var hours = Math.floor(-1 * offset / 60); + var minutes = (-1 * offset) - (hours * 60); + var sign = offset > 0 ? '-' : '+'; + return { + offset: offset, + hours: hours, + minutes: minutes, + sign: sign, + }; +} + +function timezoneOffset(date) { + var offset = parseOffset(date); + return offset.sign + pad(offset.hours, 2) + pad(offset.minutes, 2); +} + +describe('dateformat([now], [mask])', function() { + _.each(dateFormat.masks, function(value, key) { + it('should format `' + key + '` mask', function(done) { + var now = new Date(2014, 10, 26, 13, 19, 44); + var tzOffset = timezoneOffset(now); + var expected = expects[key].replace(/%TZ_PREFIX%/, 'GMT') + .replace(/%TZ_OFFSET%/g, tzOffset) + .replace(/GMT\+0000/g, 'UTC'); + if (key === 'isoUtcDateTime') { + var offset = parseOffset(now); + now.setHours(now.getHours() - offset.hours, + now.getMinutes() - offset.minutes); + var expected = now.toISOString().replace(/\.000/g, ''); + } + var actual = dateFormat(now, key); + assert.strictEqual(actual, expected); + done(); + }); + }); + it('should use `default` mask, when `mask` is empty', function(done) { + var now = new Date(2014, 10, 26, 13, 19, 44); + var expected = expects['default']; + var actual = dateFormat(now); + + assert.strictEqual(actual, expected); + done(); + }); +}); diff --git a/vnfmarket/src/main/webapp/vnfmarket/node_modules/dateformat/test/test_isoutcdatetime.js b/vnfmarket/src/main/webapp/vnfmarket/node_modules/dateformat/test/test_isoutcdatetime.js new file mode 100644 index 00000000..886b7a5b --- /dev/null +++ b/vnfmarket/src/main/webapp/vnfmarket/node_modules/dateformat/test/test_isoutcdatetime.js @@ -0,0 +1,11 @@ +var assert = require('assert'); + +var dateFormat = require('./../lib/dateformat'); + +describe('isoUtcDateTime', function() { + it('should correctly format the timezone part', function(done) { + var actual = dateFormat('2014-06-02T13:23:21-08:00', 'isoUtcDateTime'); + assert.strictEqual(actual, '2014-06-02T21:23:21Z'); + done(); + }); +}); diff --git a/vnfmarket/src/main/webapp/vnfmarket/node_modules/dateformat/test/weekofyear/test_weekofyear.js b/vnfmarket/src/main/webapp/vnfmarket/node_modules/dateformat/test/weekofyear/test_weekofyear.js new file mode 100644 index 00000000..d1ddbe81 --- /dev/null +++ b/vnfmarket/src/main/webapp/vnfmarket/node_modules/dateformat/test/weekofyear/test_weekofyear.js @@ -0,0 +1,4 @@ +var dateFormat = require('../lib/dateformat.js'); + +var val = process.argv[2] || new Date(); +console.log(dateFormat(val, 'W')); diff --git a/vnfmarket/src/main/webapp/vnfmarket/node_modules/dateformat/test/weekofyear/test_weekofyear.sh b/vnfmarket/src/main/webapp/vnfmarket/node_modules/dateformat/test/weekofyear/test_weekofyear.sh new file mode 100644 index 00000000..3c3e69b3 --- /dev/null +++ b/vnfmarket/src/main/webapp/vnfmarket/node_modules/dateformat/test/weekofyear/test_weekofyear.sh @@ -0,0 +1,27 @@ +#!/bin/bash + +# this just takes php's date() function as a reference to check if week of year +# is calculated correctly in the range from 1970 .. 2038 by brute force... + +SEQ="seq" +SYSTEM=`uname` +if [ "$SYSTEM" = "Darwin" ]; then + SEQ="jot" +fi + +for YEAR in {1970..2038}; do + for MONTH in {1..12}; do + DAYS=$(cal $MONTH $YEAR | egrep "28|29|30|31" |tail -1 |awk '{print $NF}') + for DAY in $( $SEQ $DAYS ); do + DATE=$YEAR-$MONTH-$DAY + echo -n $DATE ... + NODEVAL=$(node test_weekofyear.js $DATE) + PHPVAL=$(php -r "echo intval(date('W', strtotime('$DATE')));") + if [ "$NODEVAL" -ne "$PHPVAL" ]; then + echo "MISMATCH: node: $NODEVAL vs php: $PHPVAL for date $DATE" + else + echo " OK" + fi + done + done +done |