1 | 'use strict'
|
2 |
|
3 | var assert = require('assert')
|
4 | var isoDateTimeString = require('../../lib/transformers').isoDateTimeString
|
5 |
|
6 | describe('iso date string transformer', function() {
|
7 |
|
8 | it('should convert date to an ISO string', function(done) {
|
9 | isoDateTimeString({}, new Date(), function(err, result) {
|
10 | assert.ifError(err)
|
11 | assert.ok(/\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{3}Z/.test(result))
|
12 | done()
|
13 | })
|
14 | })
|
15 |
|
16 | it('should convert non date string to an ISO string', function(done) {
|
17 | isoDateTimeString({}, 'Thu Aug 27 2015 08:17:03 GMT+0100 (BST)', function(err, result) {
|
18 | assert.ifError(err)
|
19 | assert.ok(/\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{3}Z/.test(result))
|
20 | done()
|
21 | })
|
22 | })
|
23 |
|
24 | it('should tolerate falsey values', function(done) {
|
25 | isoDateTimeString({}, null, function(err, result) {
|
26 | assert.ifError(err)
|
27 | assert.equal(result, null)
|
28 | done()
|
29 | })
|
30 | })
|
31 |
|
32 | it('should yield errors for unconvertables', function(done) {
|
33 | isoDateTimeString({}, 'not-a-date', function(err, result) {
|
34 | assert.ok(err)
|
35 | done()
|
36 | })
|
37 | })
|
38 | })
|