@@ -67,6 +67,58 @@ describe("transformParametersArray()", () => {
67
67
) ;
68
68
} ) ;
69
69
70
+ it ( "basic (alphabetize)" , ( ) => {
71
+ const schema = [
72
+ { in : "query" , name : "delta" , required : true , type : "string" } ,
73
+ { in : "query" , name : "charlie" , required : true , type : "string" } ,
74
+ { in : "query" , name : "alpha" , required : true , type : "string" } ,
75
+ { in : "query" , name : "bravo" , required : true , type : "string" } ,
76
+ ] ;
77
+
78
+ const actual = transformParametersArray ( schema , {
79
+ ...defaults ,
80
+ version : 2 ,
81
+ alphabetize : true ,
82
+ globalParameters : {
83
+ per_page : { in : "query" , name : "per_page" , required : true , type : "number" } ,
84
+ page : { in : "query" , name : "page" , type : "number" } ,
85
+ since : { in : "query" , name : "since" , type : "string" } ,
86
+ } ,
87
+ } ) . trim ( ) ;
88
+ expect ( actual ) . to . equal ( `query: {
89
+ "alpha": string;
90
+ "bravo": string;
91
+ "charlie": string;
92
+ "delta": string;
93
+ }` ) ;
94
+ } ) ;
95
+
96
+ it ( "numeric (alphabetize)" , ( ) => {
97
+ const schema = [
98
+ { in : "query" , name : "1000" , required : true , type : "string" } ,
99
+ { in : "query" , name : "123" , required : true , type : "string" } ,
100
+ { in : "query" , name : "1001" , required : true , type : "string" } ,
101
+ { in : "query" , name : "111" , required : true , type : "string" } ,
102
+ ] ;
103
+
104
+ const actual = transformParametersArray ( schema , {
105
+ ...defaults ,
106
+ version : 2 ,
107
+ alphabetize : true ,
108
+ globalParameters : {
109
+ per_page : { in : "query" , name : "per_page" , required : true , type : "number" } ,
110
+ page : { in : "query" , name : "page" , type : "number" } ,
111
+ since : { in : "query" , name : "since" , type : "string" } ,
112
+ } ,
113
+ } ) . trim ( ) ;
114
+ expect ( actual ) . to . equal ( `query: {
115
+ "111": string;
116
+ "123": string;
117
+ "1000": string;
118
+ "1001": string;
119
+ }` ) ;
120
+ } ) ;
121
+
70
122
const refSchema = [
71
123
{ $ref : 'parameters["per_page"]' } ,
72
124
{ $ref : 'parameters["page"]' } ,
@@ -107,6 +159,24 @@ describe("transformParametersArray()", () => {
107
159
readonly "per_page": parameters["per_page"];
108
160
readonly "page"?: parameters["page"];
109
161
readonly "since"?: parameters["since"];
162
+ }` ) ;
163
+ } ) ;
164
+
165
+ it ( "$ref (alphabetize)" , ( ) => {
166
+ const actual = transformParametersArray ( refSchema , {
167
+ ...defaults ,
168
+ version : 2 ,
169
+ alphabetize : true ,
170
+ globalParameters : {
171
+ per_page : { in : "query" , name : "per_page" , required : true , type : "number" } ,
172
+ page : { in : "query" , name : "page" , type : "number" } ,
173
+ since : { in : "query" , name : "since" , type : "string" } ,
174
+ } ,
175
+ } ) . trim ( ) ;
176
+ expect ( actual ) . to . equal ( `query: {
177
+ "page"?: parameters["page"];
178
+ "per_page": parameters["per_page"];
179
+ "since"?: parameters["since"];
110
180
}` ) ;
111
181
} ) ;
112
182
} ) ;
@@ -171,6 +241,58 @@ describe("transformParametersArray()", () => {
171
241
) ;
172
242
} ) ;
173
243
244
+ it ( "basic (alphabetize)" , ( ) => {
245
+ const schema = [
246
+ { in : "query" , name : "delta" , required : true , schema : { type : "string" } } ,
247
+ { in : "query" , name : "charlie" , required : true , schema : { type : "string" } } ,
248
+ { in : "query" , name : "alpha" , required : true , schema : { type : "string" } } ,
249
+ { in : "query" , name : "bravo" , required : true , schema : { type : "string" } } ,
250
+ ] ;
251
+
252
+ const actual = transformParametersArray ( schema , {
253
+ ...defaults ,
254
+ version : 3 ,
255
+ alphabetize : true ,
256
+ globalParameters : {
257
+ per_page : { in : "query" , name : "per_page" , required : true , type : "number" } ,
258
+ page : { in : "query" , name : "page" , type : "number" } ,
259
+ since : { in : "query" , name : "since" , type : "string" } ,
260
+ } ,
261
+ } ) . trim ( ) ;
262
+ expect ( actual ) . to . equal ( `query: {
263
+ "alpha": string;
264
+ "bravo": string;
265
+ "charlie": string;
266
+ "delta": string;
267
+ }` ) ;
268
+ } ) ;
269
+
270
+ it ( "numeric (alphabetize)" , ( ) => {
271
+ const schema = [
272
+ { in : "query" , name : "1000" , required : true , schema : { type : "string" } } ,
273
+ { in : "query" , name : "123" , required : true , schema : { type : "string" } } ,
274
+ { in : "query" , name : "1001" , required : true , schema : { type : "string" } } ,
275
+ { in : "query" , name : "111" , required : true , schema : { type : "string" } } ,
276
+ ] ;
277
+
278
+ const actual = transformParametersArray ( schema , {
279
+ ...defaults ,
280
+ version : 3 ,
281
+ alphabetize : true ,
282
+ globalParameters : {
283
+ per_page : { in : "query" , name : "per_page" , required : true , type : "number" } ,
284
+ page : { in : "query" , name : "page" , type : "number" } ,
285
+ since : { in : "query" , name : "since" , type : "string" } ,
286
+ } ,
287
+ } ) . trim ( ) ;
288
+ expect ( actual ) . to . equal ( `query: {
289
+ "111": string;
290
+ "123": string;
291
+ "1000": string;
292
+ "1001": string;
293
+ }` ) ;
294
+ } ) ;
295
+
174
296
const refSchema = [
175
297
{ $ref : 'components["parameters"]["per_page"]' } ,
176
298
{ $ref : 'components["parameters"]["page"]' } ,
@@ -214,6 +336,24 @@ describe("transformParametersArray()", () => {
214
336
}` ) ;
215
337
} ) ;
216
338
339
+ it ( "$ref (alphabetize)" , ( ) => {
340
+ const actual = transformParametersArray ( refSchema , {
341
+ ...defaults ,
342
+ version : 3 ,
343
+ alphabetize : true ,
344
+ globalParameters : {
345
+ per_page : { in : "query" , name : "per_page" , required : true , type : "number" } ,
346
+ page : { in : "query" , name : "page" , type : "number" } ,
347
+ since : { in : "query" , name : "since" , type : "string" } ,
348
+ } ,
349
+ } ) . trim ( ) ;
350
+ expect ( actual ) . to . equal ( `query: {
351
+ "page"?: components["parameters"]["page"];
352
+ "per_page": components["parameters"]["per_page"];
353
+ "since"?: components["parameters"]["since"];
354
+ }` ) ;
355
+ } ) ;
356
+
217
357
it ( "nullable" , ( ) => {
218
358
const schema = [
219
359
{ in : "query" , name : "nullableString" , schema : { type : "string" , nullable : true } } ,
0 commit comments