Skip to content

Commit fefe0a5

Browse files
javier-sierra-sngularjorgecasar
authored andcommitted
1 parent 0391803 commit fefe0a5

File tree

1 file changed

+34
-6
lines changed

1 file changed

+34
-6
lines changed

lib/response-generator/index.js

Lines changed: 34 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,34 @@ const getFakerLocale = require('../utils/get-faker-locale');
55

66
const faker = getFakerLocale();
77

8+
const FORMAT_EXAMPLES = {
9+
date: '2023-11-17',
10+
time: '14:30:00Z',
11+
'date-time': '2023-11-17T14:30:00Z',
12+
'iso-time': '14:30:00Z',
13+
'iso-date-time': '2023-11-17T14:30:00Z',
14+
duration: 'PT2H30M',
15+
uri: 'https://www.example.com',
16+
'uri-reference': 'https://www.example.com/resource',
17+
'uri-template': 'https://www.example.com/{id}',
18+
url: 'https://www.example.com',
19+
email: 'example@email.com',
20+
hostname: 'www.example.com',
21+
ipv4: '192.168.0.1',
22+
ipv6: '2001:0db8:85a3:0000:0000:8a2e:0370:7334',
23+
regex: '^\\d{3}-\\d{2}-\\d{4}$',
24+
uuid: '550e8400-e29b-41d4-a716-446655440000',
25+
'json-pointer': '/path/to/resource',
26+
'relative-json-pointer': '2/foo',
27+
byte: 'SGVsbG8gd29ybGQ=',
28+
int32: 123,
29+
int64: 9223372036854776000,
30+
float: 3.14,
31+
double: 2.718281828459045,
32+
password: 'P@ssw0rd',
33+
binary: '01001000 01100101 01101100 01101100 01101111'
34+
};
35+
836
class ResponseGenerator {
937

1038
static generate(schemaResponse, preferredExampleName) {
@@ -134,16 +162,16 @@ class ResponseGenerator {
134162
}), {});
135163
}
136164

137-
static generateString() {
138-
return 'string';
165+
static generateString({ format }) {
166+
return FORMAT_EXAMPLES[format] || 'string';
139167
}
140168

141-
static generateNumber() {
142-
return 1;
169+
static generateNumber({ format }) {
170+
return FORMAT_EXAMPLES[format] || 1;
143171
}
144172

145-
static generateInteger() {
146-
return 1;
173+
static generateInteger({ format }) {
174+
return FORMAT_EXAMPLES[format] || 1;
147175
}
148176

149177
static generateBoolean() {

0 commit comments

Comments
 (0)