|
1 | | -var test = require('tape'); |
2 | | -var ZSchema = require('z-schema'); |
3 | | -const fixtures = require('./__test__/dates.json'); |
| 1 | +var test = require("tape"); |
| 2 | +var Validator = require("jsonschema").Validator; |
| 3 | + |
| 4 | +const fixtures = require("./__test__/dates.json"); |
4 | 5 | // var mockDateSchema = require('./__test__/mockDateSchema.json'); |
5 | 6 |
|
6 | 7 | const mockDateSchema = { |
7 | | - "type": "string", |
8 | | - "description": "Mock Date Format", |
9 | | - "pattern": "^([1-2][0-9]{3}-[0-1][0-9]-[0-3][0-9]|[1-2][0-9]{3}-[0-1][0-9]|[1-2][0-9]{3})$" |
| 8 | + type: "string", |
| 9 | + description: "Mock Date Format", |
| 10 | + pattern: |
| 11 | + "^([1-2][0-9]{3}-[0-1][0-9]-[0-3][0-9]|[1-2][0-9]{3}-[0-1][0-9]|[1-2][0-9]{3})$", |
10 | 12 | }; |
11 | 13 |
|
12 | 14 | function dateValidate(resumeJson, callback) { |
13 | | - var callbackWrapper = function(err, valid) { |
14 | | - if(err) { |
15 | | - callback(err) |
16 | | - } else { |
17 | | - callback(null, {valid: valid}); |
18 | | - } |
| 15 | + var v = new Validator(); |
| 16 | + |
| 17 | + const validation = v.validate(resumeJson, mockDateSchema); |
| 18 | + |
| 19 | + if (!validation.valid) { |
| 20 | + return callback(validation.errors, false); |
19 | 21 | } |
20 | 22 |
|
21 | | - new ZSchema().validate(resumeJson, mockDateSchema, callbackWrapper); |
| 23 | + return callback(null, true); |
22 | 24 | } |
23 | 25 |
|
24 | | -test('dates - YYYY-MM-DD', (t) => { |
| 26 | +test("dates - YYYY-MM-DD", (t) => { |
25 | 27 | dateValidate(fixtures.yearMonthDay, (err, valid) => { |
26 | | - t.equal(err, null, 'err should be null'); |
27 | | - t.true(valid, 'valid is true'); |
| 28 | + t.equal(err, null, "err should be null"); |
| 29 | + t.true(valid, "valid is true"); |
28 | 30 | }); |
29 | 31 | t.end(); |
30 | 32 | }); |
31 | 33 |
|
32 | | -test('dates - YYYY-MM', (t) => { |
| 34 | +test("dates - YYYY-MM", (t) => { |
33 | 35 | dateValidate(fixtures.yearMonth, (err, valid) => { |
34 | | - t.equal(err, null, 'err should be null'); |
35 | | - t.true(valid, 'valid is true'); |
| 36 | + t.equal(err, null, "err should be null"); |
| 37 | + t.true(valid, "valid is true"); |
36 | 38 | }); |
37 | 39 | t.end(); |
38 | 40 | }); |
39 | 41 |
|
40 | | -test('dates - YYYY', (t) => { |
| 42 | +test("dates - YYYY", (t) => { |
41 | 43 | dateValidate(fixtures.yearMonthDay, (err, valid) => { |
42 | | - t.equal(err, null, 'err should be null'); |
43 | | - t.true(valid, 'valid is true'); |
| 44 | + t.equal(err, null, "err should be null"); |
| 45 | + t.true(valid, "valid is true"); |
44 | 46 | }); |
45 | 47 | t.end(); |
46 | 48 | }); |
47 | 49 |
|
48 | | -test('dates - invalid', (t) => { |
| 50 | +test("dates - invalid", (t) => { |
49 | 51 | dateValidate(fixtures.invalid, (err, valid) => { |
50 | | - t.notEqual(err, null, 'err should contain an error'); |
51 | | - t.false(valid, 'valid is false'); |
| 52 | + t.notEqual(err, null, "err should contain an error"); |
| 53 | + t.false(valid, "valid is false"); |
52 | 54 | }); |
53 | 55 | t.end(); |
54 | 56 | }); |
0 commit comments