Skip to content

Commit bbbd160

Browse files
committed
add reponse serializer tests for arrays
1 parent 8f7c678 commit bbbd160

File tree

2 files changed

+38
-1
lines changed

2 files changed

+38
-1
lines changed

Diff for: test/resources/response.object.serializer.yaml

+22-1
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,27 @@ paths:
2121
id:
2222
type: number
2323

24+
/array-of-date-times:
25+
get:
26+
responses:
27+
200:
28+
description: date-time handler
29+
content:
30+
application/json:
31+
schema:
32+
type: object
33+
properties:
34+
users:
35+
type: array
36+
items:
37+
type: object
38+
properties:
39+
created_at:
40+
type: string
41+
format: date-time
42+
id:
43+
type: number
44+
2445
/date:
2546
get:
2647
responses:
@@ -41,4 +62,4 @@ components:
4162
id:
4263
type: number
4364
created_at:
44-
$ref: "#/components/schemas/Date"
65+
$ref: "#/components/schemas/Date"

Diff for: test/response.object.serializer.spec.ts

+16
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,15 @@ describe('response serializer', () => {
2828
created_at: date,
2929
});
3030
});
31+
app.get([`${app.basePath}/array-of-date-times`], (req, res) => {
32+
let date = new Date('2020-12-20T07:28:19.213Z');
33+
res.json({
34+
users: [{
35+
id: req.params.id,
36+
created_at: date,
37+
}],
38+
});
39+
});
3140
app.get([`${app.basePath}/date`], (req, res) => {
3241
let date = new Date('2020-12-20T07:28:19.213Z');
3342
res.json({
@@ -66,5 +75,12 @@ describe('response serializer', () => {
6675
.then((r) => {
6776
expect(r.body.created_at).to.equal('2020-12-20');
6877
}));
78+
it('should validate and serialize date-time in object from array', async () =>
79+
request(app)
80+
.get(`${app.basePath}/array-of-date-times`)
81+
.expect(200)
82+
.then((r) => {
83+
expect(r.body.users[0].created_at).to.equal('2020-12-20T07:28:19.213Z');
84+
}));
6985
});
7086
});

0 commit comments

Comments
 (0)