@scalar/snippetz 0.3.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (87) hide show
  1. package/README.md +1 -1
  2. package/dist/clients.d.ts.map +1 -1
  3. package/dist/clients.js +9 -1
  4. package/dist/clients.js.map +2 -2
  5. package/dist/plugins/python/httpx/async.d.ts +6 -0
  6. package/dist/plugins/python/httpx/async.d.ts.map +1 -0
  7. package/dist/plugins/python/httpx/async.js +16 -0
  8. package/dist/plugins/python/httpx/async.js.map +7 -0
  9. package/dist/plugins/python/httpx/index.d.ts +3 -0
  10. package/dist/plugins/python/httpx/index.d.ts.map +1 -0
  11. package/dist/plugins/python/httpx/index.js +3 -0
  12. package/dist/plugins/python/httpx/index.js.map +7 -0
  13. package/dist/plugins/python/httpx/sync.d.ts +6 -0
  14. package/dist/plugins/python/httpx/sync.d.ts.map +1 -0
  15. package/dist/plugins/python/httpx/sync.js +13 -0
  16. package/dist/plugins/python/httpx/sync.js.map +7 -0
  17. package/dist/plugins/python/requests/requests.d.ts.map +1 -1
  18. package/dist/plugins/python/requests/requests.js +2 -93
  19. package/dist/plugins/python/requests/requests.js.map +3 -3
  20. package/dist/plugins/python/requestsLike.d.ts +3 -0
  21. package/dist/plugins/python/requestsLike.d.ts.map +1 -0
  22. package/dist/plugins/python/requestsLike.js +120 -0
  23. package/dist/plugins/python/requestsLike.js.map +7 -0
  24. package/dist/plugins/rust/reqwest/index.d.ts +2 -0
  25. package/dist/plugins/rust/reqwest/index.d.ts.map +1 -0
  26. package/dist/plugins/rust/reqwest/index.js +2 -0
  27. package/dist/plugins/rust/reqwest/index.js.map +7 -0
  28. package/dist/plugins/rust/reqwest/reqwest.d.ts +6 -0
  29. package/dist/plugins/rust/reqwest/reqwest.d.ts.map +1 -0
  30. package/dist/plugins/rust/reqwest/reqwest.js +90 -0
  31. package/dist/plugins/rust/reqwest/reqwest.js.map +7 -0
  32. package/dist/plugins/rust/rustString.d.ts +9 -0
  33. package/dist/plugins/rust/rustString.d.ts.map +1 -0
  34. package/dist/plugins/rust/rustString.js +10 -0
  35. package/dist/plugins/rust/rustString.js.map +7 -0
  36. package/dist/plugins/shell/curl/curl.js +1 -1
  37. package/dist/plugins/shell/curl/curl.js.map +2 -2
  38. package/dist/snippetz.d.ts +2 -2
  39. package/dist/utils/convertWithHttpSnippetLite.d.ts +1 -1
  40. package/dist/utils/convertWithHttpSnippetLite.js.map +1 -1
  41. package/package.json +14 -4
  42. package/dist/plugins/c/libcurl/libcurl.test.js +0 -208
  43. package/dist/plugins/c/libcurl/libcurl.test.js.map +0 -7
  44. package/dist/plugins/clojure/clj_http/clj_http.test.js +0 -151
  45. package/dist/plugins/clojure/clj_http/clj_http.test.js.map +0 -7
  46. package/dist/plugins/dart/http/http.test.js +0 -550
  47. package/dist/plugins/dart/http/http.test.js.map +0 -7
  48. package/dist/plugins/go/native/native.test.js +0 -366
  49. package/dist/plugins/go/native/native.test.js.map +0 -7
  50. package/dist/plugins/http/http11/http11.test.js +0 -175
  51. package/dist/plugins/http/http11/http11.test.js.map +0 -7
  52. package/dist/plugins/java/okhttp/okhttp.test.js +0 -164
  53. package/dist/plugins/java/okhttp/okhttp.test.js.map +0 -7
  54. package/dist/plugins/js/fetch/fetch.test.js +0 -214
  55. package/dist/plugins/js/fetch/fetch.test.js.map +0 -7
  56. package/dist/plugins/js/ofetch/ofetch.test.js +0 -126
  57. package/dist/plugins/js/ofetch/ofetch.test.js.map +0 -7
  58. package/dist/plugins/kotlin/okhttp/okhttp.test.js +0 -164
  59. package/dist/plugins/kotlin/okhttp/okhttp.test.js.map +0 -7
  60. package/dist/plugins/node/fetch/fetch.test.js +0 -200
  61. package/dist/plugins/node/fetch/fetch.test.js.map +0 -7
  62. package/dist/plugins/node/ofetch/ofetch.test.js +0 -126
  63. package/dist/plugins/node/ofetch/ofetch.test.js.map +0 -7
  64. package/dist/plugins/node/undici/undici.test.js +0 -133
  65. package/dist/plugins/node/undici/undici.test.js.map +0 -7
  66. package/dist/plugins/php/curl/curl.test.js +0 -564
  67. package/dist/plugins/php/curl/curl.test.js.map +0 -7
  68. package/dist/plugins/php/guzzle/guzzle.test.js +0 -546
  69. package/dist/plugins/php/guzzle/guzzle.test.js.map +0 -7
  70. package/dist/plugins/python/requests/requests.test.js +0 -419
  71. package/dist/plugins/python/requests/requests.test.js.map +0 -7
  72. package/dist/plugins/ruby/native/native.test.js +0 -240
  73. package/dist/plugins/ruby/native/native.test.js.map +0 -7
  74. package/dist/plugins/shell/curl/curl.test.js +0 -427
  75. package/dist/plugins/shell/curl/curl.test.js.map +0 -7
  76. package/dist/plugins/shell/httpie/httpie.test.js +0 -113
  77. package/dist/plugins/shell/httpie/httpie.test.js.map +0 -7
  78. package/dist/plugins/shell/wget/wget.test.js +0 -143
  79. package/dist/plugins/shell/wget/wget.test.js.map +0 -7
  80. package/dist/plugins/swift/nsurlsession/nsurlsession.test.js +0 -344
  81. package/dist/plugins/swift/nsurlsession/nsurlsession.test.js.map +0 -7
  82. package/dist/snippetz.test.js +0 -79
  83. package/dist/snippetz.test.js.map +0 -7
  84. package/dist/utils/convertWithHttpSnippetLite.test.js +0 -106
  85. package/dist/utils/convertWithHttpSnippetLite.test.js.map +0 -7
  86. package/dist/utils/create-search-params.test.js +0 -49
  87. package/dist/utils/create-search-params.test.js.map +0 -7
@@ -1,550 +0,0 @@
1
- import { describe, expect, it } from "vitest";
2
- import { dartHttp } from "./http.js";
3
- describe("dartHttp", () => {
4
- it("returns a basic request", () => {
5
- const result = dartHttp.generate({
6
- url: "https://example.com"
7
- });
8
- expect(result).toBe(`import 'package:http/http.dart' as http;
9
-
10
- void main() async {
11
- final response = await http.get(Uri.parse('https://example.com'));
12
- print(response.body);
13
- }`);
14
- });
15
- it("returns a POST request", () => {
16
- const result = dartHttp.generate({
17
- url: "https://example.com",
18
- method: "post"
19
- });
20
- expect(result).toBe(`import 'package:http/http.dart' as http;
21
-
22
- void main() async {
23
- final response = await http.post(Uri.parse('https://example.com'));
24
- print(response.body);
25
- }`);
26
- });
27
- it("has headers", () => {
28
- const result = dartHttp.generate({
29
- url: "https://example.com",
30
- headers: [
31
- {
32
- name: "Content-Type",
33
- value: "application/json"
34
- }
35
- ]
36
- });
37
- expect(result).toBe(`import 'package:http/http.dart' as http;
38
-
39
- void main() async {
40
- final headers = <String,String>{
41
- 'Content-Type': 'application/json',
42
- };
43
-
44
- final response = await http.get(Uri.parse('https://example.com'), headers: headers);
45
- print(response.body);
46
- }`);
47
- });
48
- it("doesn\u2019t add empty headers", () => {
49
- const result = dartHttp.generate({
50
- url: "https://example.com",
51
- headers: []
52
- });
53
- expect(result).toBe(`import 'package:http/http.dart' as http;
54
-
55
- void main() async {
56
- final response = await http.get(Uri.parse('https://example.com'));
57
- print(response.body);
58
- }`);
59
- });
60
- it("has JSON body", () => {
61
- const result = dartHttp.generate({
62
- url: "https://example.com",
63
- method: "POST",
64
- headers: [
65
- {
66
- name: "Content-Type",
67
- value: "application/json"
68
- }
69
- ],
70
- postData: {
71
- mimeType: "application/json",
72
- text: JSON.stringify({
73
- hello: "world"
74
- })
75
- }
76
- });
77
- expect(result).toBe(`import 'package:http/http.dart' as http;
78
-
79
- void main() async {
80
- final headers = <String,String>{
81
- 'Content-Type': 'application/json',
82
- };
83
-
84
- final body = r'{"hello":"world"}';
85
-
86
- final response = await http.post(Uri.parse('https://example.com'), headers: headers, body: body);
87
- print(response.body);
88
- }`);
89
- });
90
- it("has query string", () => {
91
- const result = dartHttp.generate({
92
- url: "https://example.com",
93
- queryString: [
94
- {
95
- name: "foo",
96
- value: "bar"
97
- },
98
- {
99
- name: "bar",
100
- value: "foo"
101
- }
102
- ]
103
- });
104
- expect(result).toBe(`import 'package:http/http.dart' as http;
105
-
106
- void main() async {
107
- final response = await http.get(Uri.parse('https://example.com?foo=bar&bar=foo'));
108
- print(response.body);
109
- }`);
110
- });
111
- it("has cookies", () => {
112
- const result = dartHttp.generate({
113
- url: "https://example.com",
114
- cookies: [
115
- {
116
- name: "foo",
117
- value: "bar"
118
- },
119
- {
120
- name: "bar",
121
- value: "foo"
122
- }
123
- ]
124
- });
125
- expect(result).toBe(`import 'package:http/http.dart' as http;
126
-
127
- void main() async {
128
- final headers = <String,String>{
129
- 'Cookie': 'foo=bar; bar=foo',
130
- };
131
-
132
- final response = await http.get(Uri.parse('https://example.com'), headers: headers);
133
- print(response.body);
134
- }`);
135
- });
136
- it("doesn\u2019t add empty cookies", () => {
137
- const result = dartHttp.generate({
138
- url: "https://example.com",
139
- cookies: []
140
- });
141
- expect(result).toBe(`import 'package:http/http.dart' as http;
142
-
143
- void main() async {
144
- final response = await http.get(Uri.parse('https://example.com'));
145
- print(response.body);
146
- }`);
147
- });
148
- it("adds basic auth credentials", () => {
149
- const result = dartHttp.generate(
150
- {
151
- url: "https://example.com"
152
- },
153
- {
154
- auth: {
155
- username: "user",
156
- password: "pass"
157
- }
158
- }
159
- );
160
- expect(result).toBe(`import 'package:http/http.dart' as http;
161
-
162
- void main() async {
163
- final headers = <String,String>{
164
- 'Authorization': 'Basic ' + base64Encode(utf8.encode('user:pass')),
165
- };
166
-
167
- final response = await http.get(Uri.parse('https://example.com'), headers: headers);
168
- print(response.body);
169
- }`);
170
- });
171
- it("omits auth when not provided", () => {
172
- const result = dartHttp.generate({
173
- url: "https://example.com"
174
- });
175
- expect(result).toBe(`import 'package:http/http.dart' as http;
176
-
177
- void main() async {
178
- final response = await http.get(Uri.parse('https://example.com'));
179
- print(response.body);
180
- }`);
181
- });
182
- it("omits auth when username is missing", () => {
183
- const result = dartHttp.generate(
184
- {
185
- url: "https://example.com"
186
- },
187
- {
188
- auth: {
189
- username: "",
190
- password: "pass"
191
- }
192
- }
193
- );
194
- expect(result).toBe(`import 'package:http/http.dart' as http;
195
-
196
- void main() async {
197
- final response = await http.get(Uri.parse('https://example.com'));
198
- print(response.body);
199
- }`);
200
- });
201
- it("omits auth when password is missing", () => {
202
- const result = dartHttp.generate(
203
- {
204
- url: "https://example.com"
205
- },
206
- {
207
- auth: {
208
- username: "user",
209
- password: ""
210
- }
211
- }
212
- );
213
- expect(result).toBe(`import 'package:http/http.dart' as http;
214
-
215
- void main() async {
216
- final response = await http.get(Uri.parse('https://example.com'));
217
- print(response.body);
218
- }`);
219
- });
220
- it("handles special characters in auth credentials", () => {
221
- const result = dartHttp.generate(
222
- {
223
- url: "https://example.com"
224
- },
225
- {
226
- auth: {
227
- username: "user@example.com",
228
- password: "pass:word!"
229
- }
230
- }
231
- );
232
- expect(result).toBe(`import 'package:http/http.dart' as http;
233
-
234
- void main() async {
235
- final headers = <String,String>{
236
- 'Authorization': 'Basic ' + base64Encode(utf8.encode('user@example.com:pass:word!')),
237
- };
238
-
239
- final response = await http.get(Uri.parse('https://example.com'), headers: headers);
240
- print(response.body);
241
- }`);
242
- });
243
- it("handles undefined auth object", () => {
244
- const result = dartHttp.generate(
245
- {
246
- url: "https://example.com"
247
- },
248
- {
249
- auth: void 0
250
- }
251
- );
252
- expect(result).toBe(`import 'package:http/http.dart' as http;
253
-
254
- void main() async {
255
- final response = await http.get(Uri.parse('https://example.com'));
256
- print(response.body);
257
- }`);
258
- });
259
- it("handles multipart form data with files", () => {
260
- const result = dartHttp.generate({
261
- url: "https://example.com",
262
- method: "POST",
263
- postData: {
264
- mimeType: "multipart/form-data",
265
- params: [
266
- {
267
- name: "file",
268
- fileName: "test.txt"
269
- },
270
- {
271
- name: "field",
272
- value: "value"
273
- }
274
- ]
275
- }
276
- });
277
- expect(result).toBe(`import 'package:http/http.dart' as http;
278
-
279
- void main() async {
280
- final body = <String,String>{
281
- 'file': 'test.txt',
282
- 'field': 'value',
283
- };
284
-
285
- final response = await http.post(Uri.parse('https://example.com'), body: body);
286
- print(response.body);
287
- }`);
288
- });
289
- it("handles url-encoded form data with special characters", () => {
290
- const result = dartHttp.generate({
291
- url: "https://example.com",
292
- method: "POST",
293
- postData: {
294
- mimeType: "application/x-www-form-urlencoded",
295
- params: [
296
- {
297
- name: "special chars!@#",
298
- value: "value"
299
- }
300
- ]
301
- }
302
- });
303
- expect(result).toBe(`import 'package:http/http.dart' as http;
304
-
305
- void main() async {
306
- final body = 'special%20chars!%40%23=value';
307
-
308
- final response = await http.post(Uri.parse('https://example.com'), body: body);
309
- print(response.body);
310
- }`);
311
- });
312
- it("handles binary data flag", () => {
313
- const result = dartHttp.generate({
314
- url: "https://example.com",
315
- method: "POST",
316
- postData: {
317
- mimeType: "application/octet-stream",
318
- text: "binary content"
319
- }
320
- });
321
- expect(result).toBe(`import 'package:http/http.dart' as http;
322
-
323
- void main() async {
324
- final body = 'binary content';
325
-
326
- final response = await http.post(Uri.parse('https://example.com'), body: body);
327
- print(response.body);
328
- }`);
329
- });
330
- it("handles compressed response", () => {
331
- const result = dartHttp.generate({
332
- url: "https://example.com",
333
- headers: [
334
- {
335
- name: "Accept-Encoding",
336
- value: "gzip, deflate"
337
- }
338
- ]
339
- });
340
- expect(result).toBe(`import 'package:http/http.dart' as http;
341
-
342
- void main() async {
343
- final headers = <String,String>{
344
- 'Accept-Encoding': 'gzip, deflate',
345
- };
346
-
347
- final response = await http.get(Uri.parse('https://example.com'), headers: headers);
348
- print(response.body);
349
- }`);
350
- });
351
- it("handles special characters in URL", () => {
352
- const result = dartHttp.generate({
353
- url: "https://example.com/path with spaces/[brackets]"
354
- });
355
- expect(result).toBe(`import 'package:http/http.dart' as http;
356
-
357
- void main() async {
358
- final response = await http.get(Uri.parse('https://example.com/path with spaces/[brackets]'));
359
- print(response.body);
360
- }`);
361
- });
362
- it("handles special characters in query parameters", () => {
363
- const result = dartHttp.generate({
364
- url: "https://example.com",
365
- queryString: [
366
- {
367
- name: "q",
368
- value: "hello world & more"
369
- },
370
- {
371
- name: "special",
372
- value: "!@#$%^&*()"
373
- }
374
- ]
375
- });
376
- expect(result).toBe(`import 'package:http/http.dart' as http;
377
-
378
- void main() async {
379
- final response = await http.get(Uri.parse('https://example.com?q=hello%20world%20%26%20more&special=!%40%23%24%25%5E%26*()'));
380
- print(response.body);
381
- }`);
382
- });
383
- it("handles empty URL", () => {
384
- const result = dartHttp.generate({
385
- url: ""
386
- });
387
- expect(result).toBe(`import 'package:http/http.dart' as http;
388
-
389
- void main() async {
390
- final response = await http.get(Uri.parse(''));
391
- print(response.body);
392
- }`);
393
- });
394
- it("handles extremely long URLs", () => {
395
- const result = dartHttp.generate({
396
- url: "https://example.com/" + "a".repeat(2e3)
397
- });
398
- expect(result).toBe(`import 'package:http/http.dart' as http;
399
-
400
- void main() async {
401
- final response = await http.get(Uri.parse('https://example.com/${"a".repeat(2e3)}'));
402
- print(response.body);
403
- }`);
404
- });
405
- it("handles multiple headers with same name", () => {
406
- const result = dartHttp.generate({
407
- url: "https://example.com",
408
- headers: [
409
- { name: "X-Custom", value: "value1" },
410
- { name: "X-Custom", value: "value2" }
411
- ]
412
- });
413
- expect(result).toBe(`import 'package:http/http.dart' as http;
414
-
415
- void main() async {
416
- final headers = <String,String>{
417
- 'X-Custom': 'value2',
418
- };
419
-
420
- final response = await http.get(Uri.parse('https://example.com'), headers: headers);
421
- print(response.body);
422
- }`);
423
- });
424
- it("handles headers with empty values", () => {
425
- const result = dartHttp.generate({
426
- url: "https://example.com",
427
- headers: [{ name: "X-Empty", value: "" }]
428
- });
429
- expect(result).toBe(`import 'package:http/http.dart' as http;
430
-
431
- void main() async {
432
- final response = await http.get(Uri.parse('https://example.com'));
433
- print(response.body);
434
- }`);
435
- });
436
- it("handles multipart form data with empty file names", () => {
437
- const result = dartHttp.generate({
438
- url: "https://example.com",
439
- method: "POST",
440
- postData: {
441
- mimeType: "multipart/form-data",
442
- params: [
443
- {
444
- name: "file",
445
- fileName: ""
446
- }
447
- ]
448
- }
449
- });
450
- expect(result).toBe(`import 'package:http/http.dart' as http;
451
-
452
- void main() async {
453
- final body = <String,String>{
454
- 'file': '',
455
- };
456
-
457
- final response = await http.post(Uri.parse('https://example.com'), body: body);
458
- print(response.body);
459
- }`);
460
- });
461
- it("handles JSON body with special characters", () => {
462
- const result = dartHttp.generate({
463
- url: "https://example.com",
464
- method: "POST",
465
- headers: [
466
- {
467
- name: "Content-Type",
468
- value: "application/json"
469
- }
470
- ],
471
- postData: {
472
- mimeType: "application/json",
473
- text: JSON.stringify({
474
- key: '"quotes" and \\backslashes\\',
475
- nested: {
476
- array: ["item1", null, void 0]
477
- }
478
- })
479
- }
480
- });
481
- expect(result).toBe(`import 'package:http/http.dart' as http;
482
-
483
- void main() async {
484
- final headers = <String,String>{
485
- 'Content-Type': 'application/json',
486
- };
487
-
488
- final body = r'{"key":"\\"quotes\\" and \\\\backslashes\\\\","nested":{"array":["item1",null,null]}}';
489
-
490
- final response = await http.post(Uri.parse('https://example.com'), headers: headers, body: body);
491
- print(response.body);
492
- }`);
493
- });
494
- it("handles cookies with special characters", () => {
495
- const result = dartHttp.generate({
496
- url: "https://example.com",
497
- cookies: [
498
- {
499
- name: "special;cookie",
500
- value: "value with spaces"
501
- }
502
- ]
503
- });
504
- expect(result).toBe(`import 'package:http/http.dart' as http;
505
-
506
- void main() async {
507
- final headers = <String,String>{
508
- 'Cookie': 'special%3Bcookie=value%20with%20spaces',
509
- };
510
-
511
- final response = await http.get(Uri.parse('https://example.com'), headers: headers);
512
- print(response.body);
513
- }`);
514
- });
515
- it("prettifies JSON body", () => {
516
- const result = dartHttp.generate({
517
- url: "https://example.com",
518
- method: "POST",
519
- headers: [
520
- {
521
- name: "Content-Type",
522
- value: "application/json"
523
- }
524
- ],
525
- postData: {
526
- mimeType: "application/json",
527
- text: JSON.stringify({
528
- nested: {
529
- array: [1, 2, 3],
530
- object: { foo: "bar" }
531
- },
532
- simple: "value"
533
- })
534
- }
535
- });
536
- expect(result).toBe(`import 'package:http/http.dart' as http;
537
-
538
- void main() async {
539
- final headers = <String,String>{
540
- 'Content-Type': 'application/json',
541
- };
542
-
543
- final body = r'{"nested":{"array":[1,2,3],"object":{"foo":"bar"}},"simple":"value"}';
544
-
545
- final response = await http.post(Uri.parse('https://example.com'), headers: headers, body: body);
546
- print(response.body);
547
- }`);
548
- });
549
- });
550
- //# sourceMappingURL=http.test.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../src/plugins/dart/http/http.test.ts"],
4
- "sourcesContent": ["import { describe, expect, it } from 'vitest'\n\nimport { dartHttp } from './http'\n\ndescribe('dartHttp', () => {\n it('returns a basic request', () => {\n const result = dartHttp.generate({\n url: 'https://example.com',\n })\n\n expect(result).toBe(`import 'package:http/http.dart' as http;\n\nvoid main() async {\n final response = await http.get(Uri.parse('https://example.com'));\n print(response.body);\n}`)\n })\n\n it('returns a POST request', () => {\n const result = dartHttp.generate({\n url: 'https://example.com',\n method: 'post',\n })\n\n expect(result).toBe(`import 'package:http/http.dart' as http;\n\nvoid main() async {\n final response = await http.post(Uri.parse('https://example.com'));\n print(response.body);\n}`)\n })\n\n it('has headers', () => {\n const result = dartHttp.generate({\n url: 'https://example.com',\n headers: [\n {\n name: 'Content-Type',\n value: 'application/json',\n },\n ],\n })\n\n expect(result).toBe(`import 'package:http/http.dart' as http;\n\nvoid main() async {\n final headers = <String,String>{\n 'Content-Type': 'application/json',\n };\n\n final response = await http.get(Uri.parse('https://example.com'), headers: headers);\n print(response.body);\n}`)\n })\n\n it('doesn\u2019t add empty headers', () => {\n const result = dartHttp.generate({\n url: 'https://example.com',\n headers: [],\n })\n\n expect(result).toBe(`import 'package:http/http.dart' as http;\n\nvoid main() async {\n final response = await http.get(Uri.parse('https://example.com'));\n print(response.body);\n}`)\n })\n\n it('has JSON body', () => {\n const result = dartHttp.generate({\n url: 'https://example.com',\n method: 'POST',\n headers: [\n {\n name: 'Content-Type',\n value: 'application/json',\n },\n ],\n postData: {\n mimeType: 'application/json',\n text: JSON.stringify({\n hello: 'world',\n }),\n },\n })\n\n expect(result).toBe(`import 'package:http/http.dart' as http;\n\nvoid main() async {\n final headers = <String,String>{\n 'Content-Type': 'application/json',\n };\n\n final body = r'{\"hello\":\"world\"}';\n\n final response = await http.post(Uri.parse('https://example.com'), headers: headers, body: body);\n print(response.body);\n}`)\n })\n\n it('has query string', () => {\n const result = dartHttp.generate({\n url: 'https://example.com',\n queryString: [\n {\n name: 'foo',\n value: 'bar',\n },\n {\n name: 'bar',\n value: 'foo',\n },\n ],\n })\n\n expect(result).toBe(`import 'package:http/http.dart' as http;\n\nvoid main() async {\n final response = await http.get(Uri.parse('https://example.com?foo=bar&bar=foo'));\n print(response.body);\n}`)\n })\n\n it('has cookies', () => {\n const result = dartHttp.generate({\n url: 'https://example.com',\n cookies: [\n {\n name: 'foo',\n value: 'bar',\n },\n {\n name: 'bar',\n value: 'foo',\n },\n ],\n })\n\n expect(result).toBe(`import 'package:http/http.dart' as http;\n\nvoid main() async {\n final headers = <String,String>{\n 'Cookie': 'foo=bar; bar=foo',\n };\n\n final response = await http.get(Uri.parse('https://example.com'), headers: headers);\n print(response.body);\n}`)\n })\n\n it('doesn\u2019t add empty cookies', () => {\n const result = dartHttp.generate({\n url: 'https://example.com',\n cookies: [],\n })\n\n expect(result).toBe(`import 'package:http/http.dart' as http;\n\nvoid main() async {\n final response = await http.get(Uri.parse('https://example.com'));\n print(response.body);\n}`)\n })\n\n it('adds basic auth credentials', () => {\n const result = dartHttp.generate(\n {\n url: 'https://example.com',\n },\n {\n auth: {\n username: 'user',\n password: 'pass',\n },\n },\n )\n\n expect(result).toBe(`import 'package:http/http.dart' as http;\n\nvoid main() async {\n final headers = <String,String>{\n 'Authorization': 'Basic ' + base64Encode(utf8.encode('user:pass')),\n };\n\n final response = await http.get(Uri.parse('https://example.com'), headers: headers);\n print(response.body);\n}`)\n })\n\n it('omits auth when not provided', () => {\n const result = dartHttp.generate({\n url: 'https://example.com',\n })\n\n expect(result).toBe(`import 'package:http/http.dart' as http;\n\nvoid main() async {\n final response = await http.get(Uri.parse('https://example.com'));\n print(response.body);\n}`)\n })\n\n it('omits auth when username is missing', () => {\n const result = dartHttp.generate(\n {\n url: 'https://example.com',\n },\n {\n auth: {\n username: '',\n password: 'pass',\n },\n },\n )\n\n expect(result).toBe(`import 'package:http/http.dart' as http;\n\nvoid main() async {\n final response = await http.get(Uri.parse('https://example.com'));\n print(response.body);\n}`)\n })\n\n it('omits auth when password is missing', () => {\n const result = dartHttp.generate(\n {\n url: 'https://example.com',\n },\n {\n auth: {\n username: 'user',\n password: '',\n },\n },\n )\n\n expect(result).toBe(`import 'package:http/http.dart' as http;\n\nvoid main() async {\n final response = await http.get(Uri.parse('https://example.com'));\n print(response.body);\n}`)\n })\n\n it('handles special characters in auth credentials', () => {\n const result = dartHttp.generate(\n {\n url: 'https://example.com',\n },\n {\n auth: {\n username: 'user@example.com',\n password: 'pass:word!',\n },\n },\n )\n\n expect(result).toBe(`import 'package:http/http.dart' as http;\n\nvoid main() async {\n final headers = <String,String>{\n 'Authorization': 'Basic ' + base64Encode(utf8.encode('user@example.com:pass:word!')),\n };\n\n final response = await http.get(Uri.parse('https://example.com'), headers: headers);\n print(response.body);\n}`)\n })\n\n it('handles undefined auth object', () => {\n const result = dartHttp.generate(\n {\n url: 'https://example.com',\n },\n {\n auth: undefined,\n },\n )\n\n expect(result).toBe(`import 'package:http/http.dart' as http;\n\nvoid main() async {\n final response = await http.get(Uri.parse('https://example.com'));\n print(response.body);\n}`)\n })\n\n it('handles multipart form data with files', () => {\n const result = dartHttp.generate({\n url: 'https://example.com',\n method: 'POST',\n postData: {\n mimeType: 'multipart/form-data',\n params: [\n {\n name: 'file',\n fileName: 'test.txt',\n },\n {\n name: 'field',\n value: 'value',\n },\n ],\n },\n })\n\n expect(result).toBe(`import 'package:http/http.dart' as http;\n\nvoid main() async {\n final body = <String,String>{\n 'file': 'test.txt',\n 'field': 'value',\n };\n\n final response = await http.post(Uri.parse('https://example.com'), body: body);\n print(response.body);\n}`)\n })\n\n it('handles url-encoded form data with special characters', () => {\n const result = dartHttp.generate({\n url: 'https://example.com',\n method: 'POST',\n postData: {\n mimeType: 'application/x-www-form-urlencoded',\n params: [\n {\n name: 'special chars!@#',\n value: 'value',\n },\n ],\n },\n })\n\n expect(result).toBe(`import 'package:http/http.dart' as http;\n\nvoid main() async {\n final body = 'special%20chars!%40%23=value';\n\n final response = await http.post(Uri.parse('https://example.com'), body: body);\n print(response.body);\n}`)\n })\n\n it('handles binary data flag', () => {\n const result = dartHttp.generate({\n url: 'https://example.com',\n method: 'POST',\n postData: {\n mimeType: 'application/octet-stream',\n text: 'binary content',\n },\n })\n\n expect(result).toBe(`import 'package:http/http.dart' as http;\n\nvoid main() async {\n final body = 'binary content';\n\n final response = await http.post(Uri.parse('https://example.com'), body: body);\n print(response.body);\n}`)\n })\n\n it('handles compressed response', () => {\n const result = dartHttp.generate({\n url: 'https://example.com',\n headers: [\n {\n name: 'Accept-Encoding',\n value: 'gzip, deflate',\n },\n ],\n })\n\n expect(result).toBe(`import 'package:http/http.dart' as http;\n\nvoid main() async {\n final headers = <String,String>{\n 'Accept-Encoding': 'gzip, deflate',\n };\n\n final response = await http.get(Uri.parse('https://example.com'), headers: headers);\n print(response.body);\n}`)\n })\n\n it('handles special characters in URL', () => {\n const result = dartHttp.generate({\n url: 'https://example.com/path with spaces/[brackets]',\n })\n\n expect(result).toBe(`import 'package:http/http.dart' as http;\n\nvoid main() async {\n final response = await http.get(Uri.parse('https://example.com/path with spaces/[brackets]'));\n print(response.body);\n}`)\n })\n\n it('handles special characters in query parameters', () => {\n const result = dartHttp.generate({\n url: 'https://example.com',\n queryString: [\n {\n name: 'q',\n value: 'hello world & more',\n },\n {\n name: 'special',\n value: '!@#$%^&*()',\n },\n ],\n })\n\n expect(result).toBe(`import 'package:http/http.dart' as http;\n\nvoid main() async {\n final response = await http.get(Uri.parse('https://example.com?q=hello%20world%20%26%20more&special=!%40%23%24%25%5E%26*()'));\n print(response.body);\n}`)\n })\n\n it('handles empty URL', () => {\n const result = dartHttp.generate({\n url: '',\n })\n\n expect(result).toBe(`import 'package:http/http.dart' as http;\n\nvoid main() async {\n final response = await http.get(Uri.parse(''));\n print(response.body);\n}`)\n })\n\n it('handles extremely long URLs', () => {\n const result = dartHttp.generate({\n url: 'https://example.com/' + 'a'.repeat(2000),\n })\n\n expect(result).toBe(`import 'package:http/http.dart' as http;\n\nvoid main() async {\n final response = await http.get(Uri.parse('https://example.com/${'a'.repeat(2000)}'));\n print(response.body);\n}`)\n })\n\n it('handles multiple headers with same name', () => {\n const result = dartHttp.generate({\n url: 'https://example.com',\n headers: [\n { name: 'X-Custom', value: 'value1' },\n { name: 'X-Custom', value: 'value2' },\n ],\n })\n\n expect(result).toBe(`import 'package:http/http.dart' as http;\n\nvoid main() async {\n final headers = <String,String>{\n 'X-Custom': 'value2',\n };\n\n final response = await http.get(Uri.parse('https://example.com'), headers: headers);\n print(response.body);\n}`)\n })\n\n it('handles headers with empty values', () => {\n const result = dartHttp.generate({\n url: 'https://example.com',\n headers: [{ name: 'X-Empty', value: '' }],\n })\n\n expect(result).toBe(`import 'package:http/http.dart' as http;\n\nvoid main() async {\n final response = await http.get(Uri.parse('https://example.com'));\n print(response.body);\n}`)\n })\n\n it('handles multipart form data with empty file names', () => {\n const result = dartHttp.generate({\n url: 'https://example.com',\n method: 'POST',\n postData: {\n mimeType: 'multipart/form-data',\n params: [\n {\n name: 'file',\n fileName: '',\n },\n ],\n },\n })\n\n expect(result).toBe(`import 'package:http/http.dart' as http;\n\nvoid main() async {\n final body = <String,String>{\n 'file': '',\n };\n\n final response = await http.post(Uri.parse('https://example.com'), body: body);\n print(response.body);\n}`)\n })\n\n it('handles JSON body with special characters', () => {\n const result = dartHttp.generate({\n url: 'https://example.com',\n method: 'POST',\n headers: [\n {\n name: 'Content-Type',\n value: 'application/json',\n },\n ],\n postData: {\n mimeType: 'application/json',\n text: JSON.stringify({\n key: '\"quotes\" and \\\\backslashes\\\\',\n nested: {\n array: ['item1', null, undefined],\n },\n }),\n },\n })\n\n expect(result).toBe(`import 'package:http/http.dart' as http;\n\nvoid main() async {\n final headers = <String,String>{\n 'Content-Type': 'application/json',\n };\n\n final body = r'{\"key\":\"\\\\\"quotes\\\\\" and \\\\\\\\backslashes\\\\\\\\\",\"nested\":{\"array\":[\"item1\",null,null]}}';\n\n final response = await http.post(Uri.parse('https://example.com'), headers: headers, body: body);\n print(response.body);\n}`)\n })\n\n it('handles cookies with special characters', () => {\n const result = dartHttp.generate({\n url: 'https://example.com',\n cookies: [\n {\n name: 'special;cookie',\n value: 'value with spaces',\n },\n ],\n })\n\n expect(result).toBe(`import 'package:http/http.dart' as http;\n\nvoid main() async {\n final headers = <String,String>{\n 'Cookie': 'special%3Bcookie=value%20with%20spaces',\n };\n\n final response = await http.get(Uri.parse('https://example.com'), headers: headers);\n print(response.body);\n}`)\n })\n\n it('prettifies JSON body', () => {\n const result = dartHttp.generate({\n url: 'https://example.com',\n method: 'POST',\n headers: [\n {\n name: 'Content-Type',\n value: 'application/json',\n },\n ],\n postData: {\n mimeType: 'application/json',\n text: JSON.stringify({\n nested: {\n array: [1, 2, 3],\n object: { foo: 'bar' },\n },\n simple: 'value',\n }),\n },\n })\n\n expect(result).toBe(`import 'package:http/http.dart' as http;\n\nvoid main() async {\n final headers = <String,String>{\n 'Content-Type': 'application/json',\n };\n\n final body = r'{\"nested\":{\"array\":[1,2,3],\"object\":{\"foo\":\"bar\"}},\"simple\":\"value\"}';\n\n final response = await http.post(Uri.parse('https://example.com'), headers: headers, body: body);\n print(response.body);\n}`)\n })\n})\n"],
5
- "mappings": "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",
6
- "names": []
7
- }