/
deserialize.spec.js
144 lines (118 loc) · 4.14 KB
/
deserialize.spec.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
import * as deserialize from "../../../src/base/deserialize";
describe("deserialize date tests", function () {
it("should parse date", function () {
var actual = deserialize.iso8601Date("2016-01-15");
var expected = new Date(Date.UTC(2016, 0, 15));
expect(actual).toEqual(expected);
});
it("should return original when unable to parse date", function () {
var actual = deserialize.iso8601Date("not-a-date");
expect(actual).toEqual("not-a-date");
});
});
describe("deserialize date time tests", function () {
it("should parse date time", function () {
var actual = deserialize.iso8601DateTime("2016-01-15T03:04:05Z");
var expected = new Date(Date.UTC(2016, 0, 15, 3, 4, 5));
expect(actual).toEqual(expected);
});
it("should return original when unable to parse datetime", function () {
var actual = deserialize.iso8601DateTime("not-a-date");
expect(actual).toEqual("not-a-date");
});
});
describe("deserialize rfc2822 date time tests", function () {
it("should parse rfc 2822 date time", function () {
var actual = deserialize.rfc2822DateTime("Mon, 28 Dec 2015 21:04:44 +0000");
var expected = new Date(Date.UTC(2015, 11, 28, 21, 4, 44));
expect(actual).toEqual(expected);
});
it("should return original when unable to parse datetime", function () {
var actual = deserialize.rfc2822DateTime("not-a-date");
expect(actual).toEqual("not-a-date");
});
});
describe("deserialize decimal tests", function () {
it("should deserialize undefined", function () {
var actual = deserialize.decimal();
expect(actual).toBeUndefined();
});
it("should deserialize empty string", function () {
var actual = deserialize.decimal("");
expect(actual).toEqual("");
});
it("should deserialize zero string", function () {
var actual = deserialize.decimal("0.000");
expect(actual).toEqual(0.0);
});
it("should deserialize string", function () {
var actual = deserialize.decimal("1.23");
expect(actual).toEqual(1.23);
});
it("should deserialize negative string", function () {
var actual = deserialize.decimal("-1.23");
expect(actual).toEqual(-1.23);
});
it("should deserialize positive string", function () {
var actual = deserialize.decimal("+1.23");
expect(actual).toEqual(1.23);
});
it("should deserialize zero", function () {
var actual = deserialize.decimal(0);
expect(actual).toEqual(0);
});
it("should deserialize", function () {
var actual = deserialize.decimal(1.23);
expect(actual).toEqual(1.23);
});
it("should deserialize negative", function () {
var actual = deserialize.decimal(-1.23);
expect(actual).toEqual(-1.23);
});
});
describe("deserialize integer tests", function () {
it("should deserialize undefined", function () {
var actual = deserialize.integer();
expect(actual).toBeUndefined();
});
it("should deserialize empty string", function () {
var actual = deserialize.integer("");
expect(actual).toEqual("");
});
it("should deserialize zero string", function () {
var actual = deserialize.integer("0");
expect(actual).toEqual(0);
});
it("should deserialize string", function () {
var actual = deserialize.integer("1");
expect(actual).toEqual(1);
});
it("should deserialize negative string", function () {
var actual = deserialize.integer("-12");
expect(actual).toEqual(-12);
});
it("should deserialize positive string", function () {
var actual = deserialize.integer("+123");
expect(actual).toEqual(123);
});
it("should truncate float string", function () {
var actual = deserialize.integer("1.23");
expect(actual).toEqual(1);
});
it("should deserialize zero", function () {
var actual = deserialize.integer(0);
expect(actual).toEqual(0);
});
it("should deserialize", function () {
var actual = deserialize.integer(123);
expect(actual).toEqual(123);
});
it("should deserialize negative", function () {
var actual = deserialize.integer(-123);
expect(actual).toEqual(-123);
});
it("should truncate float", function () {
var actual = deserialize.integer(1.23);
expect(actual).toEqual(1);
});
});