fastify 4.26.2 → 4.28.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 (432) hide show
  1. package/.tap/processinfo/029eb7a1-1942-40bc-98e2-cef3b7a14b5e.json +268 -0
  2. package/.tap/processinfo/03c196c6-01c3-4268-a9b5-298dff18a873.json +269 -0
  3. package/.tap/processinfo/04bbabba-8611-4908-9092-dfa9fcc13327.json +268 -0
  4. package/.tap/processinfo/05d8a743-3edf-4e2d-ae5a-dc99d0855ba5.json +272 -0
  5. package/.tap/processinfo/07718963-36a8-4d87-82ad-366c877a5247.json +268 -0
  6. package/.tap/processinfo/08fe3bde-5814-4308-9158-cdf1e47391b7.json +268 -0
  7. package/.tap/processinfo/0a3e3fb0-eabf-4532-ae80-20434da22678.json +268 -0
  8. package/.tap/processinfo/0caf2a75-4b3a-46c4-9b41-c7e450e5e15f.json +268 -0
  9. package/.tap/processinfo/0cf35d52-e5b2-4884-bcf0-b0ab3017b689.json +268 -0
  10. package/.tap/processinfo/0e666134-5013-4ecd-9ee6-59b22716c39c.json +268 -0
  11. package/.tap/processinfo/1087b811-4ec4-4f91-92b4-a78a51a437de.json +268 -0
  12. package/.tap/processinfo/13709ed3-b68c-42cf-8472-b0c4b8a89d2b.json +268 -0
  13. package/.tap/processinfo/13ac2f18-d0e0-439f-bc86-2ff0119af857.json +268 -0
  14. package/.tap/processinfo/13e47e0e-f6e8-4381-8a42-923b661f4a4f.json +268 -0
  15. package/.tap/processinfo/143f7d43-b8e8-4666-b482-f28fb37160ee.json +268 -0
  16. package/.tap/processinfo/14f3801d-03ab-4db3-9df5-c5d47e0a8cf0.json +270 -0
  17. package/.tap/processinfo/15a07dad-4bcd-442c-95e0-30c31f2b9818.json +273 -0
  18. package/.tap/processinfo/191ad3ad-04d8-4fb9-b119-ad2811f9b925.json +243 -0
  19. package/.tap/processinfo/1b25d54b-62d3-44cd-b581-31e705522fae.json +268 -0
  20. package/.tap/processinfo/1b7cb260-f04b-4135-a4fe-093081c4706f.json +268 -0
  21. package/.tap/processinfo/1e395d63-4815-4c77-aa47-df3709cc0ef9.json +268 -0
  22. package/.tap/processinfo/1e7f6a54-3abf-4771-863a-585cba110aec.json +268 -0
  23. package/.tap/processinfo/21a15e1d-0b41-47d8-b03d-0ba130969034.json +244 -0
  24. package/.tap/processinfo/21e02016-9ecd-4983-8417-9c74d224644f.json +269 -0
  25. package/.tap/processinfo/2327d941-d0d5-4762-b386-02a9a27ad28e.json +268 -0
  26. package/.tap/processinfo/23d39204-eac9-4f57-8db4-ffa996227fbd.json +268 -0
  27. package/.tap/processinfo/2493875a-0ac6-4d53-993c-f44471fd0678.json +268 -0
  28. package/.tap/processinfo/2698669f-f1e7-4a12-a687-8d58177be2b0.json +269 -0
  29. package/.tap/processinfo/2862b053-0a3d-46d7-9381-ffcb06287609.json +268 -0
  30. package/.tap/processinfo/2ac1b8d6-ac92-40e2-a59a-7681069f487c.json +268 -0
  31. package/.tap/processinfo/2c75e5f7-c4ef-47e4-a1c4-105eef6c0fab.json +242 -0
  32. package/.tap/processinfo/2e2c45cd-718b-4e5a-bf88-f801630f2803.json +268 -0
  33. package/.tap/processinfo/2f9ca478-3e03-4cce-a0bc-fcdc86d7c316.json +268 -0
  34. package/.tap/processinfo/30e3117f-fb74-456f-8f02-527e9eb9fcc3.json +268 -0
  35. package/.tap/processinfo/332be679-63c7-4b49-8b87-ef55995ada2d.json +268 -0
  36. package/.tap/processinfo/37c36f95-07f9-4ef0-8ab4-9e107d51b605.json +269 -0
  37. package/.tap/processinfo/3874eae2-f3db-44ef-9a9f-c8169d4b2b76.json +268 -0
  38. package/.tap/processinfo/38a7c3da-a411-41d0-8993-9deefd23500d.json +268 -0
  39. package/.tap/processinfo/3a7b6dbd-e153-4ce5-b557-21fb82009983.json +269 -0
  40. package/.tap/processinfo/3c6731ec-936d-470f-b7b0-0c87b54be051.json +268 -0
  41. package/.tap/processinfo/3c850ea9-4ef0-4044-a3fd-fbadfa9d543e.json +268 -0
  42. package/.tap/processinfo/3e4e15e0-a325-46f0-be57-5fd374560b7a.json +269 -0
  43. package/.tap/processinfo/3ed868e0-887c-402a-9f22-b1fdb74b4da0.json +268 -0
  44. package/.tap/processinfo/405498d7-5854-4ce1-a7dc-06920932f26d.json +268 -0
  45. package/.tap/processinfo/40b7eb19-ae35-4490-8a11-eb91a573c590.json +268 -0
  46. package/.tap/processinfo/40bb1260-d856-4248-8939-a0a05e322041.json +268 -0
  47. package/.tap/processinfo/41252e0b-7f69-44cc-b356-dd94bcbfdb29.json +268 -0
  48. package/.tap/processinfo/418fa710-e2fd-4508-b533-c179958da464.json +269 -0
  49. package/.tap/processinfo/433ef009-63aa-48fe-8e5d-c725228fa2fc.json +268 -0
  50. package/.tap/processinfo/44bf577c-9c01-4197-bd29-2e1ae888c4d4.json +268 -0
  51. package/.tap/processinfo/458fb7f2-20b9-48a2-8853-403c9851f605.json +268 -0
  52. package/.tap/processinfo/46b9892b-bb23-4b86-b0fa-9297f08c611a.json +268 -0
  53. package/.tap/processinfo/46bd9aaf-6cf3-4bd5-b90d-e136a7299a8e.json +268 -0
  54. package/.tap/processinfo/4779aa5f-e57a-4fcc-87e2-7d0bd4fca27f.json +268 -0
  55. package/.tap/processinfo/47b73f4b-ab31-49e1-97fd-8436dbe4bdf3.json +269 -0
  56. package/.tap/processinfo/49dba52e-e0c9-445d-8e9d-6d9ebe3ce6c4.json +268 -0
  57. package/.tap/processinfo/4b1dbc61-4e65-4c56-9784-2036f369038a.json +268 -0
  58. package/.tap/processinfo/4b6f0b40-43ef-4668-83a0-e07e28509df5.json +268 -0
  59. package/.tap/processinfo/4c236f70-f532-460b-8f7a-dd973301d493.json +268 -0
  60. package/.tap/processinfo/4d92b707-a268-48b8-885b-004d3a288c41.json +269 -0
  61. package/.tap/processinfo/4ff10bae-7c97-4c0a-b712-6c0d2f8c0e8e.json +270 -0
  62. package/.tap/processinfo/50f95bd5-ae12-4d83-99f4-ae9b0690c6a8.json +268 -0
  63. package/.tap/processinfo/557e4a49-d99c-4a63-b2f2-f33d897ab874.json +268 -0
  64. package/.tap/processinfo/589fd21a-8319-4abf-8cf7-82cb4a463a4b.json +269 -0
  65. package/.tap/processinfo/5a872f3a-949f-40be-8004-d739d034255c.json +272 -0
  66. package/.tap/processinfo/5abc301a-23da-424d-891e-3afbaff9156c.json +269 -0
  67. package/.tap/processinfo/5c31614c-a766-4837-ab59-dd6977166f72.json +253 -0
  68. package/.tap/processinfo/5d1e90c8-d819-4901-b022-f9ea4cd81978.json +268 -0
  69. package/.tap/processinfo/5d283e67-f31d-4fa8-a559-a1d8e82ee046.json +269 -0
  70. package/.tap/processinfo/5df505bc-6a4b-4c41-822f-51e2d7111de8.json +268 -0
  71. package/.tap/processinfo/5eaf64a2-fbfd-40e7-b391-c30f744b2bf1.json +269 -0
  72. package/.tap/processinfo/5ef5ede0-6436-4938-8401-d32ad4bffd5d.json +268 -0
  73. package/.tap/processinfo/606f05c0-8293-41db-bc92-eea82123697f.json +269 -0
  74. package/.tap/processinfo/6446806d-6cab-4c1d-a9ed-6bccaf3c4ea9.json +268 -0
  75. package/.tap/processinfo/64da7e08-925d-444d-98de-6568c6115d8d.json +269 -0
  76. package/.tap/processinfo/6917da6d-d2dc-466a-a893-7fb7412dde96.json +268 -0
  77. package/.tap/processinfo/69bbeee0-c398-4ccf-98b3-fb625a63bab4.json +268 -0
  78. package/.tap/processinfo/6da6ea8f-3370-4703-b230-90159531f766.json +268 -0
  79. package/.tap/processinfo/6ecffe1f-3016-4c11-9294-b488baced99f.json +268 -0
  80. package/.tap/processinfo/6f23f41f-ccbd-48cb-9ab6-311db0cfb65c.json +270 -0
  81. package/.tap/processinfo/70168912-9bb2-4334-bb89-041f1764cddf.json +268 -0
  82. package/.tap/processinfo/713a674e-40e1-46b4-866e-949d57c1a9f9.json +270 -0
  83. package/.tap/processinfo/730254d4-eacb-4cdf-80f4-8da22341cde5.json +268 -0
  84. package/.tap/processinfo/7344e559-c546-416f-8f1b-0f9fe12c6f02.json +268 -0
  85. package/.tap/processinfo/7556217a-0155-448f-b4d4-bec1bb0f6040.json +269 -0
  86. package/.tap/processinfo/7572079c-166c-4c4c-85ff-89b9430b214f.json +268 -0
  87. package/.tap/processinfo/7808180f-1974-47cd-bba2-2d6b8b711d65.json +273 -0
  88. package/.tap/processinfo/796dde83-da66-4db2-8d27-d45a3627c9c7.json +268 -0
  89. package/.tap/processinfo/7979819f-3723-48be-9f55-be700e689441.json +270 -0
  90. package/.tap/processinfo/7a664d39-d7f5-42f9-89df-15563048fab6.json +268 -0
  91. package/.tap/processinfo/7b047b72-01d9-4217-857c-93341651b4b3.json +269 -0
  92. package/.tap/processinfo/7ce41af6-7961-45ae-8c6f-b6e1c5692a48.json +268 -0
  93. package/.tap/processinfo/7e1de1c6-127e-463d-9357-081ee33ef5ce.json +269 -0
  94. package/.tap/processinfo/81ac7a7f-b0c0-4ef6-82cb-c718ea84e152.json +268 -0
  95. package/.tap/processinfo/851a058f-a497-4b10-a0b7-c9182d9c4d5a.json +268 -0
  96. package/.tap/processinfo/86502974-c245-4194-ade4-d9c6fdbb757e.json +268 -0
  97. package/.tap/processinfo/86b9786f-4a98-43b8-882a-5f936b876f08.json +241 -0
  98. package/.tap/processinfo/8a3fe726-86ab-4300-8d73-7eacbbc02a05.json +268 -0
  99. package/.tap/processinfo/8adf928b-c963-4ba0-9c35-606fcbd8a2aa.json +272 -0
  100. package/.tap/processinfo/8b31a6d8-1a33-4a27-93ca-1c5b364be068.json +240 -0
  101. package/.tap/processinfo/8ec12773-6b18-49a2-8e52-874c797df965.json +833 -0
  102. package/.tap/processinfo/8edb9502-3420-42fb-a602-e5de93be2df1.json +268 -0
  103. package/.tap/processinfo/8fc572e6-9828-4f98-a49c-9e081b2193c4.json +242 -0
  104. package/.tap/processinfo/8fee2d30-c5dd-4fae-9cf2-2ef8dd0f90de.json +834 -0
  105. package/.tap/processinfo/92cc0496-5f26-4370-8212-18136b972f99.json +268 -0
  106. package/.tap/processinfo/93a3f064-3f6e-4f49-becb-f7925f2961a9.json +268 -0
  107. package/.tap/processinfo/967e3697-8310-4a19-8dd5-927ac8bd6c79.json +269 -0
  108. package/.tap/processinfo/97225e23-9d30-4287-b3f5-72bccebec50b.json +268 -0
  109. package/.tap/processinfo/9a363bc6-4e65-47e8-94ca-26a9db428fb4.json +268 -0
  110. package/.tap/processinfo/9d2fe462-57fa-43f1-b02c-d188f15de30b.json +270 -0
  111. package/.tap/processinfo/a00b6cda-feb7-4b8a-8179-4c43bc29d670.json +269 -0
  112. package/.tap/processinfo/a017cbd5-4ac7-49e1-8c77-1bf4f6e7f2a6.json +271 -0
  113. package/.tap/processinfo/a1277309-1984-48f8-b60b-f5e8639736be.json +271 -0
  114. package/.tap/processinfo/a16bf53e-4337-48ff-88fa-67f55738e0f5.json +268 -0
  115. package/.tap/processinfo/a3a9848f-440e-41bb-9b0b-568bcfee0ddc.json +268 -0
  116. package/.tap/processinfo/a468c11f-f2f1-4e92-9ba0-6d28b6569b72.json +268 -0
  117. package/.tap/processinfo/a5880465-68f1-46b3-84a5-0da389d0bc67.json +268 -0
  118. package/.tap/processinfo/a666f394-39b4-44ad-8e74-abebf74dde3b.json +270 -0
  119. package/.tap/processinfo/af09d8ca-7053-4410-b514-b22c47f5979f.json +268 -0
  120. package/.tap/processinfo/af203309-28aa-459d-a56e-d88833695521.json +268 -0
  121. package/.tap/processinfo/afa2f7b6-dcd2-4d90-bf3c-54ba8b6800eb.json +268 -0
  122. package/.tap/processinfo/b231291d-ef14-4ff0-85f9-38a73a5408f8.json +268 -0
  123. package/.tap/processinfo/b3d3f2a1-a9fc-4d88-b122-fae90248cd59.json +268 -0
  124. package/.tap/processinfo/b834bf83-26c4-403a-8e91-eb15fe4b0b5d.json +268 -0
  125. package/.tap/processinfo/b8786fd7-47df-4ac1-8d6f-2d4c7623c681.json +268 -0
  126. package/.tap/processinfo/b9758f53-7f5a-4b03-8684-8a42ad644e5a.json +268 -0
  127. package/.tap/processinfo/bd194ea2-a21a-4604-b225-ee48abf1e607.json +242 -0
  128. package/.tap/processinfo/bd7ced53-3872-43b7-ad73-3352e50b728b.json +268 -0
  129. package/.tap/processinfo/be50295b-7e50-46cd-8bf1-637bf222699c.json +268 -0
  130. package/.tap/processinfo/bec61dd9-aa52-4e6c-8e37-5c9c10e935fd.json +268 -0
  131. package/.tap/processinfo/c015adf9-1d60-447e-87b5-b2031fe55bba.json +268 -0
  132. package/.tap/processinfo/c0666afa-7f64-45bd-97fb-145df1380157.json +268 -0
  133. package/.tap/processinfo/c2c0c012-c1c0-4457-84d6-dadba8396c94.json +268 -0
  134. package/.tap/processinfo/c3dd3ecd-737b-47ce-a917-54341c7bbed3.json +268 -0
  135. package/.tap/processinfo/c41ac06d-64b8-4bb3-bf56-0551f5a48f4b.json +268 -0
  136. package/.tap/processinfo/c4235bfb-a2aa-4271-9c6b-3ceb370219b1.json +268 -0
  137. package/.tap/processinfo/c4e6f24f-288c-493c-b6f0-02924aeb6758.json +270 -0
  138. package/.tap/processinfo/c54227bb-4a7b-40bb-bfe6-b54fe55078f3.json +268 -0
  139. package/.tap/processinfo/c699de91-3b0b-4466-9418-6910a3eb640a.json +269 -0
  140. package/.tap/processinfo/c74e2f37-451a-4577-ac18-e597fbd9a1d4.json +269 -0
  141. package/.tap/processinfo/c90cccec-5b4b-445f-a935-ac22859675d0.json +252 -0
  142. package/.tap/processinfo/c9dd6c7d-0d16-45e5-87ae-117388bf2994.json +268 -0
  143. package/.tap/processinfo/ca2e48fb-58c5-47fc-ad2e-263838aea42c.json +272 -0
  144. package/.tap/processinfo/ca87351d-c710-45c1-838a-16bccac59874.json +273 -0
  145. package/.tap/processinfo/cdb4a671-5776-4944-91b9-c456c58841ef.json +268 -0
  146. package/.tap/processinfo/cf10fdc8-6a87-447a-9e12-45f447af61f3.json +244 -0
  147. package/.tap/processinfo/cf3f1f08-643e-4f24-82ca-40f7a349c3d1.json +268 -0
  148. package/.tap/processinfo/d091172a-06a5-469b-82a9-8fefe3dd99da.json +240 -0
  149. package/.tap/processinfo/d1675431-61d6-45f8-a010-6e654112a00a.json +272 -0
  150. package/.tap/processinfo/d2d54aa2-c221-4ad4-b6b7-0c58e3c3679c.json +269 -0
  151. package/.tap/processinfo/d4f3c95a-ddbe-419d-bce0-dd6acceee21f.json +268 -0
  152. package/.tap/processinfo/d54ed8f1-43c3-478a-90d3-2c8aced723f2.json +269 -0
  153. package/.tap/processinfo/d6e5a2a6-4647-4d98-916c-aec4ace54a65.json +268 -0
  154. package/.tap/processinfo/d7280c64-45e6-4b12-affc-3ac9a5d4014a.json +268 -0
  155. package/.tap/processinfo/d82c8367-d825-4405-88df-07298f6ef840.json +269 -0
  156. package/.tap/processinfo/d8f97e53-e921-4d33-9c8d-2f7e807a9425.json +268 -0
  157. package/.tap/processinfo/da546a73-9714-4f8c-bdbb-e42730edbcfa.json +268 -0
  158. package/.tap/processinfo/da7fb7fb-1da4-49f8-a3ee-d4ea623c01a5.json +268 -0
  159. package/.tap/processinfo/daa6a016-4f0c-4050-923c-2022e0bb21d8.json +268 -0
  160. package/.tap/processinfo/db9a251d-8540-4719-b464-e7d5febd97d1.json +240 -0
  161. package/.tap/processinfo/dc10c603-8e58-4611-baa3-44da2578d07a.json +268 -0
  162. package/.tap/processinfo/dde56c1a-858c-47cc-b0bb-61279620ac17.json +268 -0
  163. package/.tap/processinfo/e0d9c4ea-f7c7-4c64-8ced-66dc6f0ac5d2.json +271 -0
  164. package/.tap/processinfo/e121454f-5dfa-4209-ba15-4c39840871f2.json +831 -0
  165. package/.tap/processinfo/e1f43e40-c3fe-4eb8-a713-d5910cc6b25a.json +268 -0
  166. package/.tap/processinfo/e4575e7a-f00e-488b-94e1-8f877b54725e.json +268 -0
  167. package/.tap/processinfo/e9ad667e-8603-4488-af64-449cc9532803.json +268 -0
  168. package/.tap/processinfo/eb26a697-e5e2-4730-aeea-bcb9c49afd4d.json +268 -0
  169. package/.tap/processinfo/eb29d1c3-feaf-4744-9d84-cf257e8269b0.json +268 -0
  170. package/.tap/processinfo/ee720c0a-ed64-4e7e-8c0a-139c7b9725d2.json +268 -0
  171. package/.tap/processinfo/ef88c13a-87b2-49e4-a683-7b812505cd6f.json +268 -0
  172. package/.tap/processinfo/f4ed6948-dac0-4128-9f86-d083b6918ea7.json +268 -0
  173. package/.tap/processinfo/f7544c01-8ac7-4e42-8ad5-c4d62e094d1f.json +270 -0
  174. package/.tap/processinfo/f7cee4b3-7bcc-4591-a628-5629b0b41c9e.json +268 -0
  175. package/.tap/processinfo/f9c0a1f7-c1a4-44d3-ae3f-8c1eb42cd746.json +269 -0
  176. package/.tap/processinfo/fc46b4da-79db-4201-af7e-34bb17f92d69.json +270 -0
  177. package/.tap/processinfo/fccc0056-03c4-40cb-9d0b-2db4bbe573c1.json +268 -0
  178. package/.tap/processinfo/fd2df572-54d7-4ce7-b7aa-a2b4b00d4127.json +254 -0
  179. package/.tap/processinfo/fea9377f-b473-484d-bee6-ac7f49e50937.json +269 -0
  180. package/.tap/processinfo/feb516dc-abda-46e6-9b42-d37adfc63366.json +268 -0
  181. package/.tap/processinfo/ff0fda4c-aa2e-4236-906e-fdfb6bd6632e.json +269 -0
  182. package/.tap/test-results/test/404s.test.js.tap +623 -0
  183. package/.tap/test-results/test/500s.test.js.tap +64 -0
  184. package/.tap/test-results/test/allowUnsafeRegex.test.js.tap +36 -0
  185. package/.tap/test-results/test/als.test.js.tap +15 -0
  186. package/.tap/test-results/test/async-await.test.js.tap +184 -0
  187. package/.tap/test-results/test/async-dispose.test.js.tap +8 -0
  188. package/.tap/test-results/test/async_hooks.test.js.tap +10 -0
  189. package/.tap/test-results/test/bodyLimit.test.js.tap +48 -0
  190. package/.tap/test-results/test/buffer.test.js.tap +20 -0
  191. package/.tap/test-results/test/build/error-serializer.test.js.tap +8 -0
  192. package/.tap/test-results/test/build/version.test.js.tap +7 -0
  193. package/.tap/test-results/test/case-insensitive.test.js.tap +36 -0
  194. package/.tap/test-results/test/chainable.test.js.tap +17 -0
  195. package/.tap/test-results/test/check.test.js.tap +10 -0
  196. package/.tap/test-results/test/childLoggerFactory.test.js.tap +23 -0
  197. package/.tap/test-results/test/client-timeout.test.js.tap +7 -0
  198. package/.tap/test-results/test/close-pipelining.test.js.tap +15 -0
  199. package/.tap/test-results/test/close.test.js.tap +172 -0
  200. package/.tap/test-results/test/connectionTimeout.test.js.tap +12 -0
  201. package/.tap/test-results/test/constrained-routes.test.js.tap +173 -0
  202. package/.tap/test-results/test/content-length.test.js.tap +46 -0
  203. package/.tap/test-results/test/content-parser.test.js.tap +266 -0
  204. package/.tap/test-results/test/content-type.test.js.tap +14 -0
  205. package/.tap/test-results/test/context-config.test.js.tap +41 -0
  206. package/.tap/test-results/test/copy.test.js.tap +14 -0
  207. package/.tap/test-results/test/custom-http-server.test.js.tap +30 -0
  208. package/.tap/test-results/test/custom-parser-async.test.js.tap +21 -0
  209. package/.tap/test-results/test/custom-parser.0.test.js.tap +199 -0
  210. package/.tap/test-results/test/custom-parser.1.test.js.tap +90 -0
  211. package/.tap/test-results/test/custom-parser.2.test.js.tap +22 -0
  212. package/.tap/test-results/test/custom-parser.3.test.js.tap +53 -0
  213. package/.tap/test-results/test/custom-parser.4.test.js.tap +45 -0
  214. package/.tap/test-results/test/custom-parser.5.test.js.tap +41 -0
  215. package/.tap/test-results/test/custom-querystring-parser.test.js.tap +46 -0
  216. package/.tap/test-results/test/decorator.test.js.tap +465 -0
  217. package/.tap/test-results/test/delete.test.js.tap +110 -0
  218. package/.tap/test-results/test/diagnostics-channel/404.test.js.tap +15 -0
  219. package/.tap/test-results/test/diagnostics-channel/async-delay-request.test.js.tap +25 -0
  220. package/.tap/test-results/test/diagnostics-channel/async-request.test.js.tap +24 -0
  221. package/.tap/test-results/test/diagnostics-channel/error-before-handler.test.js.tap +9 -0
  222. package/.tap/test-results/test/diagnostics-channel/error-request.test.js.tap +20 -0
  223. package/.tap/test-results/test/diagnostics-channel/error-status.test.js.tap +10 -0
  224. package/.tap/test-results/test/diagnostics-channel/init.test.js.tap +14 -0
  225. package/.tap/test-results/test/diagnostics-channel/sync-delay-request.test.js.tap +16 -0
  226. package/.tap/test-results/test/diagnostics-channel/sync-request-reply.test.js.tap +16 -0
  227. package/.tap/test-results/test/diagnostics-channel/sync-request.test.js.tap +19 -0
  228. package/.tap/test-results/test/encapsulated-child-logger-factory.test.js.tap +18 -0
  229. package/.tap/test-results/test/encapsulated-error-handler.test.js.tap +243 -0
  230. package/.tap/test-results/test/esm/errorCodes.test.mjs.tap +9 -0
  231. package/.tap/test-results/test/esm/esm.test.mjs.tap +8 -0
  232. package/.tap/test-results/test/esm/index.test.js.tap +8 -0
  233. package/.tap/test-results/test/fastify-instance.test.js.tap +114 -0
  234. package/.tap/test-results/test/findRoute.test.js.tap +37 -0
  235. package/.tap/test-results/test/fluent-schema.test.js.tap +36 -0
  236. package/.tap/test-results/test/genReqId.test.js.tap +106 -0
  237. package/.tap/test-results/test/get.test.js.tap +151 -0
  238. package/.tap/test-results/test/handler-context.test.js.tap +19 -0
  239. package/.tap/test-results/test/has-route.test.js.tap +30 -0
  240. package/.tap/test-results/test/head.test.js.tap +130 -0
  241. package/.tap/test-results/test/header-overflow.test.js.tap +16 -0
  242. package/.tap/test-results/test/hooks-async.test.js.tap +286 -0
  243. package/.tap/test-results/test/hooks.on-listen.test.js.tap +311 -0
  244. package/.tap/test-results/test/hooks.on-ready.test.js.tap +151 -0
  245. package/.tap/test-results/test/hooks.test.js.tap +966 -0
  246. package/.tap/test-results/test/http2/closing.test.js.tap +35 -0
  247. package/.tap/test-results/test/http2/constraint.test.js.tap +32 -0
  248. package/.tap/test-results/test/http2/head.test.js.tap +9 -0
  249. package/.tap/test-results/test/http2/missing-http2-module.test.js.tap +8 -0
  250. package/.tap/test-results/test/http2/plain.test.js.tap +22 -0
  251. package/.tap/test-results/test/http2/secure-with-fallback.test.js.tap +40 -0
  252. package/.tap/test-results/test/http2/secure.test.js.tap +27 -0
  253. package/.tap/test-results/test/http2/unknown-http-method.test.js.tap +9 -0
  254. package/.tap/test-results/test/https/custom-https-server.test.js.tap +10 -0
  255. package/.tap/test-results/test/https/https.test.js.tap +45 -0
  256. package/.tap/test-results/test/imports.test.js.tap +14 -0
  257. package/.tap/test-results/test/inject.test.js.tap +165 -0
  258. package/.tap/test-results/test/internals/all.test.js.tap +42 -0
  259. package/.tap/test-results/test/internals/contentTypeParser.test.js.tap +14 -0
  260. package/.tap/test-results/test/internals/context.test.js.tap +14 -0
  261. package/.tap/test-results/test/internals/decorator.test.js.tap +51 -0
  262. package/.tap/test-results/test/internals/errors.test.js.tap +1212 -0
  263. package/.tap/test-results/test/internals/handleRequest.test.js.tap +69 -0
  264. package/.tap/test-results/test/internals/hookRunner.test.js.tap +143 -0
  265. package/.tap/test-results/test/internals/hooks.test.js.tap +45 -0
  266. package/.tap/test-results/test/internals/initialConfig.test.js.tap +125 -0
  267. package/.tap/test-results/test/internals/logger.test.js.tap +71 -0
  268. package/.tap/test-results/test/internals/plugin.test.js.tap +48 -0
  269. package/.tap/test-results/test/internals/reply-serialize.test.js.tap +166 -0
  270. package/.tap/test-results/test/internals/reply.test.js.tap +688 -0
  271. package/.tap/test-results/test/internals/reqIdGenFactory.test.js.tap +74 -0
  272. package/.tap/test-results/test/internals/request-validate.test.js.tap +384 -0
  273. package/.tap/test-results/test/internals/request.test.js.tap +163 -0
  274. package/.tap/test-results/test/internals/server.test.js.tap +30 -0
  275. package/.tap/test-results/test/internals/validation.test.js.tap +121 -0
  276. package/.tap/test-results/test/keepAliveTimeout.test.js.tap +12 -0
  277. package/.tap/test-results/test/listen.1.test.js.tap +31 -0
  278. package/.tap/test-results/test/listen.2.test.js.tap +46 -0
  279. package/.tap/test-results/test/listen.3.test.js.tap +25 -0
  280. package/.tap/test-results/test/listen.4.test.js.tap +51 -0
  281. package/.tap/test-results/test/lock.test.js.tap +29 -0
  282. package/.tap/test-results/test/logger/instantiation.test.js.tap +92 -0
  283. package/.tap/test-results/test/logger/logging.test.js.tap +117 -0
  284. package/.tap/test-results/test/logger/options.test.js.tap +165 -0
  285. package/.tap/test-results/test/logger/request.test.js.tap +82 -0
  286. package/.tap/test-results/test/logger/response.test.js.tap +38 -0
  287. package/.tap/test-results/test/maxRequestsPerSocket.test.js.tap +44 -0
  288. package/.tap/test-results/test/method-missing.test.js.tap +8 -0
  289. package/.tap/test-results/test/middleware.test.js.tap +17 -0
  290. package/.tap/test-results/test/mkcalendar.test.js.tap +43 -0
  291. package/.tap/test-results/test/mkcol.test.js.tap +14 -0
  292. package/.tap/test-results/test/move.test.js.tap +15 -0
  293. package/.tap/test-results/test/noop-set.test.js.tap +8 -0
  294. package/.tap/test-results/test/nullable-validation.test.js.tap +36 -0
  295. package/.tap/test-results/test/options.error-handler.test.js.tap +186 -0
  296. package/.tap/test-results/test/options.test.js.tap +174 -0
  297. package/.tap/test-results/test/output-validation.test.js.tap +66 -0
  298. package/.tap/test-results/test/patch.error-handler.test.js.tap +206 -0
  299. package/.tap/test-results/test/patch.test.js.tap +182 -0
  300. package/.tap/test-results/test/plugin.1.test.js.tap +78 -0
  301. package/.tap/test-results/test/plugin.2.test.js.tap +102 -0
  302. package/.tap/test-results/test/plugin.3.test.js.tap +58 -0
  303. package/.tap/test-results/test/plugin.4.test.js.tap +164 -0
  304. package/.tap/test-results/test/post-empty-body.test.js.tap +8 -0
  305. package/.tap/test-results/test/pretty-print.test.js.tap +82 -0
  306. package/.tap/test-results/test/promises.test.js.tap +46 -0
  307. package/.tap/test-results/test/propfind.test.js.tap +43 -0
  308. package/.tap/test-results/test/proppatch.test.js.tap +29 -0
  309. package/.tap/test-results/test/proto-poisoning.test.js.tap +47 -0
  310. package/.tap/test-results/test/put.error-handler.test.js.tap +206 -0
  311. package/.tap/test-results/test/put.test.js.tap +182 -0
  312. package/.tap/test-results/test/register.test.js.tap +61 -0
  313. package/.tap/test-results/test/reply-code.test.js.tap +40 -0
  314. package/.tap/test-results/test/reply-earlyHints.test.js.tap +22 -0
  315. package/.tap/test-results/test/reply-error.test.js.tap +643 -0
  316. package/.tap/test-results/test/reply-trailers.test.js.tap +176 -0
  317. package/.tap/test-results/test/report.test.js.tap +43 -0
  318. package/.tap/test-results/test/request-error.test.js.tap +98 -0
  319. package/.tap/test-results/test/request-id.test.js.tap +38 -0
  320. package/.tap/test-results/test/request.deprecated.test.js.tap +13 -0
  321. package/.tap/test-results/test/requestTimeout.test.js.tap +21 -0
  322. package/.tap/test-results/test/route-hooks.test.js.tap +498 -0
  323. package/.tap/test-results/test/route-prefix.test.js.tap +195 -0
  324. package/.tap/test-results/test/route-shorthand.test.js.tap +190 -0
  325. package/.tap/test-results/test/route.1.test.js.tap +93 -0
  326. package/.tap/test-results/test/route.2.test.js.tap +28 -0
  327. package/.tap/test-results/test/route.3.test.js.tap +39 -0
  328. package/.tap/test-results/test/route.4.test.js.tap +32 -0
  329. package/.tap/test-results/test/route.5.test.js.tap +54 -0
  330. package/.tap/test-results/test/route.6.test.js.tap +81 -0
  331. package/.tap/test-results/test/route.7.test.js.tap +93 -0
  332. package/.tap/test-results/test/route.8.test.js.tap +38 -0
  333. package/.tap/test-results/test/router-options.test.js.tap +104 -0
  334. package/.tap/test-results/test/same-shape.test.js.tap +22 -0
  335. package/.tap/test-results/test/schema-examples.test.js.tap +85 -0
  336. package/.tap/test-results/test/schema-feature.test.js.tap +445 -0
  337. package/.tap/test-results/test/schema-serialization.test.js.tap +194 -0
  338. package/.tap/test-results/test/schema-special-usage.test.js.tap +186 -0
  339. package/.tap/test-results/test/schema-validation.test.js.tap +199 -0
  340. package/.tap/test-results/test/search.test.js.tap +77 -0
  341. package/.tap/test-results/test/serialize-response.test.js.tap +26 -0
  342. package/.tap/test-results/test/server.test.js.tap +65 -0
  343. package/.tap/test-results/test/set-error-handler.test.js.tap +7 -0
  344. package/.tap/test-results/test/skip-reply-send.test.js.tap +272 -0
  345. package/.tap/test-results/test/stream.1.test.js.tap +36 -0
  346. package/.tap/test-results/test/stream.2.test.js.tap +20 -0
  347. package/.tap/test-results/test/stream.3.test.js.tap +34 -0
  348. package/.tap/test-results/test/stream.4.test.js.tap +40 -0
  349. package/.tap/test-results/test/stream.5.test.js.tap +37 -0
  350. package/.tap/test-results/test/sync-routes.test.js.tap +19 -0
  351. package/.tap/test-results/test/throw.test.js.tap +116 -0
  352. package/.tap/test-results/test/trace.test.js.tap +7 -0
  353. package/.tap/test-results/test/trust-proxy.test.js.tap +109 -0
  354. package/.tap/test-results/test/type-provider.test.js.tap +12 -0
  355. package/.tap/test-results/test/unlock.test.js.tap +14 -0
  356. package/.tap/test-results/test/upgrade.test.js.tap +8 -0
  357. package/.tap/test-results/test/url-rewriting.test.js.tap +39 -0
  358. package/.tap/test-results/test/useSemicolonDelimiter.test.js.tap +33 -0
  359. package/.tap/test-results/test/validation-error-handling.test.js.tap +180 -0
  360. package/.tap/test-results/test/versioned-routes.test.js.tap +151 -0
  361. package/.tap/test-results/test/web-api.test.js.tap +51 -0
  362. package/.tap/test-results/test/wrapThenable.test.js.tap +11 -0
  363. package/.taprc +1 -0
  364. package/README.md +4 -0
  365. package/SPONSORS.md +1 -1
  366. package/docs/Guides/Database.md +2 -2
  367. package/docs/Guides/Delay-Accepting-Requests.md +1 -1
  368. package/docs/Guides/Detecting-When-Clients-Abort.md +6 -4
  369. package/docs/Guides/Ecosystem.md +21 -11
  370. package/docs/Guides/Getting-Started.md +2 -0
  371. package/docs/Guides/Plugins-Guide.md +1 -1
  372. package/docs/Guides/Prototype-Poisoning.md +1 -1
  373. package/docs/Reference/Errors.md +2 -3
  374. package/docs/Reference/Hooks.md +5 -3
  375. package/docs/Reference/LTS.md +32 -20
  376. package/docs/Reference/Logging.md +1 -1
  377. package/docs/Reference/Reply.md +8 -8
  378. package/docs/Reference/Request.md +2 -2
  379. package/docs/Reference/Routes.md +3 -2
  380. package/docs/Reference/Server.md +11 -5
  381. package/docs/Reference/Type-Providers.md +10 -4
  382. package/docs/Reference/TypeScript.md +25 -24
  383. package/docs/Reference/Validation-and-Serialization.md +1 -1
  384. package/docs/Reference/Warnings.md +2 -0
  385. package/fastify.js +3 -4
  386. package/lib/error-handler.js +34 -21
  387. package/lib/error-serializer.js +75 -18
  388. package/lib/fourOhFour.js +5 -3
  389. package/lib/handleRequest.js +2 -1
  390. package/lib/httpMethods.js +3 -1
  391. package/lib/reply.js +10 -4
  392. package/lib/route.js +5 -1
  393. package/lib/warnings.js +6 -0
  394. package/lib/wrapThenable.js +2 -0
  395. package/package.json +3 -3
  396. package/test/404s.test.js +2 -2
  397. package/test/500s.test.js +32 -0
  398. package/test/close-pipelining.test.js +11 -4
  399. package/test/close.test.js +1 -1
  400. package/test/encapsulated-error-handler.test.js +1 -1
  401. package/test/esm/errorCodes.test.mjs +10 -0
  402. package/test/esm/named-exports.mjs +1 -0
  403. package/test/esm/other.mjs +1 -0
  404. package/test/esm/plugin.mjs +1 -0
  405. package/test/has-route.test.js +17 -1
  406. package/test/hooks.test.js +2 -2
  407. package/test/internals/handleRequest.test.js +2 -2
  408. package/test/internals/reply.test.js +33 -3
  409. package/test/lock.test.js +43 -10
  410. package/test/logger/instantiation.test.js +1 -1
  411. package/test/logger/logging.test.js +37 -16
  412. package/test/logger/options.test.js +1 -1
  413. package/test/mkcalendar.test.js +165 -0
  414. package/test/propfind.test.js +40 -8
  415. package/test/proppatch.test.js +48 -18
  416. package/test/report.test.js +161 -0
  417. package/test/schema-examples.test.js +1 -1
  418. package/test/schema-feature.test.js +6 -6
  419. package/test/schema-serialization.test.js +2 -2
  420. package/test/schema-special-usage.test.js +1 -1
  421. package/test/skip-reply-send.test.js +1 -1
  422. package/test/stream.5.test.js +2 -2
  423. package/test/types/instance.test-d.ts +1 -1
  424. package/test/types/reply.test-d.ts +3 -3
  425. package/test/types/request.test-d.ts +2 -2
  426. package/test/types/type-provider.test-d.ts +9 -5
  427. package/types/reply.d.ts +10 -6
  428. package/types/request.d.ts +2 -2
  429. package/types/route.d.ts +26 -26
  430. package/types/type-provider.d.ts +1 -1
  431. package/types/utils.d.ts +6 -1
  432. /package/test/esm/{esm.mjs → esm.test.mjs} +0 -0
@@ -0,0 +1,65 @@
1
+ TAP version 14
2
+ # Subtest: listen should accept null port
3
+ 1..1
4
+ ok 1 - should not error
5
+ ok 1 - listen should accept null port # time=22.466ms
6
+
7
+ # Subtest: listen should accept undefined port
8
+ 1..1
9
+ ok 1 - should not error
10
+ ok 2 - listen should accept undefined port # time=12.383ms
11
+
12
+ # Subtest: listen should accept stringified number port
13
+ 1..1
14
+ ok 1 - should not error
15
+ ok 3 - listen should accept stringified number port # time=3.134ms
16
+
17
+ # Subtest: listen should accept log text resolution function
18
+ 1..3
19
+ ok 1 - should be equal
20
+ ok 2 - executed
21
+ ok 3 - should not error
22
+ ok 4 - listen should accept log text resolution function # time=1.441ms
23
+
24
+ # Subtest: listen should reject string port
25
+ 1..2
26
+ ok 1 - should be equal
27
+ ok 2 - should be equal
28
+ ok 5 - listen should reject string port # time=2.596ms
29
+
30
+ # Subtest: Test for hostname and port
31
+ ok 1 - should be equal
32
+ ok 2 - should be equal
33
+ ok 3 - should be equal
34
+ 1..3
35
+ ok 6 - Test for hostname and port # time=15.699ms
36
+
37
+ # Subtest: abort signal
38
+ # Subtest: listen should not start server
39
+ 1..2
40
+ ok 1 - should be equal
41
+ ok 2 - type is [object Object]
42
+ ok 1 - listen should not start server # time=2.31ms
43
+
44
+ # Subtest: listen should not start server if already aborted
45
+ 1..2
46
+ ok 1 - should be equal
47
+ ok 2 - type is [object Object]
48
+ ok 2 - listen should not start server if already aborted # time=1.148ms
49
+
50
+ # Subtest: listen should throw if received invalid signal
51
+ 1..2
52
+ ok 1 - should be equal
53
+ ok 2 - should be equal
54
+ ok 3 - listen should throw if received invalid signal # time=0.611ms
55
+
56
+ 1..3
57
+ ok 7 - abort signal # time=7.207ms
58
+
59
+ # Subtest: \#5180 - preClose should be called before closing secondary server
60
+ 1..2
61
+ ok 1 - should not error
62
+ ok 2 - should be equal
63
+ ok 8 - \#5180 - preClose should be called before closing secondary server # time=259.102ms
64
+
65
+ 1..8
@@ -0,0 +1,7 @@
1
+ TAP version 14
2
+ # Subtest: setErrorHandler should throw an error if the handler is not a function
3
+ 1..1
4
+ ok 1 - expected to throw
5
+ ok 1 - setErrorHandler should throw an error if the handler is not a function # time=9.184ms
6
+
7
+ 1..1
@@ -0,0 +1,272 @@
1
+ TAP version 14
2
+ # Subtest: skip automatic reply.send() with reply.sent = true and a body
3
+ ok 1 - should not be equal
4
+ ok 2 - should not be equal
5
+ ok 3 - should not be equal
6
+ ok 4 - should not be equal
7
+ ok 5 - should be equal
8
+ ok 6 - should be equal
9
+ 1..6
10
+ ok 1 - skip automatic reply.send() with reply.sent = true and a body # time=19.158ms
11
+
12
+ # Subtest: skip automatic reply.send() with reply.sent = true and no body
13
+ ok 1 - should not be equal
14
+ ok 2 - should not be equal
15
+ ok 3 - should not be equal
16
+ ok 4 - should not be equal
17
+ ok 5 - should be equal
18
+ ok 6 - should be equal
19
+ 1..6
20
+ ok 2 - skip automatic reply.send() with reply.sent = true and no body # time=1.973ms
21
+
22
+ # Subtest: skip automatic reply.send() with reply.sent = true and an error
23
+ ok 1 - should be equal
24
+ ok 2 - should be equal
25
+ ok 3 - should be equal
26
+ ok 4 - should be equal
27
+ ok 5 - should be equal
28
+ 1..5
29
+ ok 3 - skip automatic reply.send() with reply.sent = true and an error # time=2.971ms
30
+
31
+ # Subtest: Hijacking inside onRequest skips all the following hooks and handler execution
32
+ 1..4
33
+ # Subtest: Sending a response using reply.raw => onResponse hook is called
34
+ ok 1 - should not be equal
35
+ ok 2 - should not be equal
36
+ ok 3 - onResponse should be called
37
+ ok 4 - should not be equal
38
+ ok 5 - should not be equal
39
+ ok 6 - should be equal
40
+ ok 7 - should be equal
41
+ 1..7
42
+ ok 1 - Sending a response using reply.raw => onResponse hook is called # time=6.476ms
43
+
44
+ # Subtest: Sending a response using req.socket => onResponse not called
45
+ ok 1 - should not be equal
46
+ ok 2 - should not be equal
47
+ ok 3 - should not be equal
48
+ ok 4 - should not be equal
49
+ ok 5 - should not error
50
+ ok 6 - should not be equal
51
+ ok 7 - should not be equal
52
+ ok 8 - should match pattern
53
+ 1..8
54
+ ok 2 - Sending a response using req.socket => onResponse not called # time=33.33ms
55
+
56
+ # Subtest: Throwing an error does not trigger any hooks
57
+ ok 1 - should not be equal
58
+ ok 2 - should not be equal
59
+ ok 3 - should not error
60
+ 1..3
61
+ ok 3 - Throwing an error does not trigger any hooks # time=1004.089ms
62
+
63
+ # Subtest: Calling reply.send() after hijacking logs a warning
64
+ ok 1 - should be equal
65
+ ok 2 - should not error
66
+ ok 3 - should be equal
67
+ 1..3
68
+ ok 4 - Calling reply.send() after hijacking logs a warning # time=1002.305ms
69
+
70
+ ok 4 - Hijacking inside onRequest skips all the following hooks and handler execution # time=2049.652ms
71
+
72
+ # Subtest: Hijacking inside preParsing skips all the following hooks and handler execution
73
+ 1..4
74
+ # Subtest: Sending a response using reply.raw => onResponse hook is called
75
+ ok 1 - should not be equal
76
+ ok 2 - should not be equal
77
+ ok 3 - onRequest should be called
78
+ ok 4 - onResponse should be called
79
+ ok 5 - should not be equal
80
+ ok 6 - should not be equal
81
+ ok 7 - should be equal
82
+ ok 8 - should be equal
83
+ 1..8
84
+ ok 1 - Sending a response using reply.raw => onResponse hook is called # time=4.493ms
85
+
86
+ # Subtest: Sending a response using req.socket => onResponse not called
87
+ ok 1 - should not be equal
88
+ ok 2 - should not be equal
89
+ ok 3 - should not be equal
90
+ ok 4 - should not be equal
91
+ ok 5 - should not error
92
+ ok 6 - should not be equal
93
+ ok 7 - should not be equal
94
+ ok 8 - onRequest should be called
95
+ ok 9 - should match pattern
96
+ 1..9
97
+ ok 2 - Sending a response using req.socket => onResponse not called # time=5.596ms
98
+
99
+ # Subtest: Throwing an error does not trigger any hooks
100
+ ok 1 - should not be equal
101
+ ok 2 - should not be equal
102
+ ok 3 - onRequest should be called
103
+ ok 4 - should not error
104
+ 1..4
105
+ ok 3 - Throwing an error does not trigger any hooks # time=1002.69ms
106
+
107
+ # Subtest: Calling reply.send() after hijacking logs a warning
108
+ ok 1 - onRequest should be called
109
+ ok 2 - should be equal
110
+ ok 3 - should not error
111
+ ok 4 - should be equal
112
+ 1..4
113
+ ok 4 - Calling reply.send() after hijacking logs a warning # time=1005.53ms
114
+
115
+ ok 5 - Hijacking inside preParsing skips all the following hooks and handler execution # time=2023.585ms
116
+
117
+ # Subtest: Hijacking inside preValidation skips all the following hooks and handler execution
118
+ 1..4
119
+ # Subtest: Sending a response using reply.raw => onResponse hook is called
120
+ ok 1 - should not be equal
121
+ ok 2 - should not be equal
122
+ ok 3 - onRequest should be called
123
+ ok 4 - preParsing should be called
124
+ ok 5 - onResponse should be called
125
+ ok 6 - should not be equal
126
+ ok 7 - should not be equal
127
+ ok 8 - should be equal
128
+ ok 9 - should be equal
129
+ 1..9
130
+ ok 1 - Sending a response using reply.raw => onResponse hook is called # time=8.896ms
131
+
132
+ # Subtest: Sending a response using req.socket => onResponse not called
133
+ ok 1 - should not be equal
134
+ ok 2 - should not be equal
135
+ ok 3 - should not be equal
136
+ ok 4 - should not be equal
137
+ ok 5 - should not error
138
+ ok 6 - should not be equal
139
+ ok 7 - should not be equal
140
+ ok 8 - onRequest should be called
141
+ ok 9 - preParsing should be called
142
+ ok 10 - should match pattern
143
+ 1..10
144
+ ok 2 - Sending a response using req.socket => onResponse not called # time=6.973ms
145
+
146
+ # Subtest: Throwing an error does not trigger any hooks
147
+ ok 1 - should not be equal
148
+ ok 2 - should not be equal
149
+ ok 3 - onRequest should be called
150
+ ok 4 - preParsing should be called
151
+ ok 5 - should not error
152
+ 1..5
153
+ ok 3 - Throwing an error does not trigger any hooks # time=1007.359ms
154
+
155
+ # Subtest: Calling reply.send() after hijacking logs a warning
156
+ ok 1 - onRequest should be called
157
+ ok 2 - preParsing should be called
158
+ ok 3 - should be equal
159
+ ok 4 - should not error
160
+ ok 5 - should be equal
161
+ 1..5
162
+ ok 4 - Calling reply.send() after hijacking logs a warning # time=1004.918ms
163
+
164
+ ok 6 - Hijacking inside preValidation skips all the following hooks and handler execution # time=2033.503ms
165
+
166
+ # Subtest: Hijacking inside preHandler skips all the following hooks and handler execution
167
+ 1..4
168
+ # Subtest: Sending a response using reply.raw => onResponse hook is called
169
+ ok 1 - should not be equal
170
+ ok 2 - should not be equal
171
+ ok 3 - onRequest should be called
172
+ ok 4 - preParsing should be called
173
+ ok 5 - preValidation should be called
174
+ ok 6 - onResponse should be called
175
+ ok 7 - should not be equal
176
+ ok 8 - should not be equal
177
+ ok 9 - should be equal
178
+ ok 10 - should be equal
179
+ 1..10
180
+ ok 1 - Sending a response using reply.raw => onResponse hook is called # time=8.022ms
181
+
182
+ # Subtest: Sending a response using req.socket => onResponse not called
183
+ ok 1 - should not be equal
184
+ ok 2 - should not be equal
185
+ ok 3 - should not be equal
186
+ ok 4 - should not be equal
187
+ ok 5 - should not error
188
+ ok 6 - should not be equal
189
+ ok 7 - should not be equal
190
+ ok 8 - onRequest should be called
191
+ ok 9 - preParsing should be called
192
+ ok 10 - preValidation should be called
193
+ ok 11 - should match pattern
194
+ 1..11
195
+ ok 2 - Sending a response using req.socket => onResponse not called # time=8.488ms
196
+
197
+ # Subtest: Throwing an error does not trigger any hooks
198
+ ok 1 - should not be equal
199
+ ok 2 - should not be equal
200
+ ok 3 - onRequest should be called
201
+ ok 4 - preParsing should be called
202
+ ok 5 - preValidation should be called
203
+ ok 6 - should not error
204
+ 1..6
205
+ ok 3 - Throwing an error does not trigger any hooks # time=1005.568ms
206
+
207
+ # Subtest: Calling reply.send() after hijacking logs a warning
208
+ ok 1 - onRequest should be called
209
+ ok 2 - preParsing should be called
210
+ ok 3 - preValidation should be called
211
+ ok 4 - should be equal
212
+ ok 5 - should not error
213
+ ok 6 - should be equal
214
+ 1..6
215
+ ok 4 - Calling reply.send() after hijacking logs a warning # time=1006.474ms
216
+
217
+ ok 7 - Hijacking inside preHandler skips all the following hooks and handler execution # time=2032.58ms
218
+
219
+ # Subtest: Hijacking inside handler skips all the following hooks and handler execution
220
+ 1..4
221
+ # Subtest: Sending a response using reply.raw => onResponse hook is called
222
+ ok 1 - should not be equal
223
+ ok 2 - should not be equal
224
+ ok 3 - onRequest should be called
225
+ ok 4 - preParsing should be called
226
+ ok 5 - preValidation should be called
227
+ ok 6 - onResponse should be called
228
+ ok 7 - should not be equal
229
+ ok 8 - should not be equal
230
+ ok 9 - should be equal
231
+ ok 10 - should be equal
232
+ 1..10
233
+ ok 1 - Sending a response using reply.raw => onResponse hook is called # time=10.437ms
234
+
235
+ # Subtest: Sending a response using req.socket => onResponse not called
236
+ ok 1 - should not be equal
237
+ ok 2 - should not be equal
238
+ ok 3 - should not be equal
239
+ ok 4 - should not be equal
240
+ ok 5 - should not error
241
+ ok 6 - should not be equal
242
+ ok 7 - should not be equal
243
+ ok 8 - onRequest should be called
244
+ ok 9 - preParsing should be called
245
+ ok 10 - preValidation should be called
246
+ ok 11 - should match pattern
247
+ 1..11
248
+ ok 2 - Sending a response using req.socket => onResponse not called # time=8.064ms
249
+
250
+ # Subtest: Throwing an error does not trigger any hooks
251
+ ok 1 - onRequest should be called
252
+ ok 2 - preParsing should be called
253
+ ok 3 - preValidation should be called
254
+ ok 4 - should be equal
255
+ ok 5 - should not error
256
+ ok 6 - should be equal
257
+ 1..6
258
+ ok 3 - Throwing an error does not trigger any hooks # time=1006.259ms
259
+
260
+ # Subtest: Calling reply.send() after hijacking logs a warning
261
+ ok 1 - onRequest should be called
262
+ ok 2 - preParsing should be called
263
+ ok 3 - preValidation should be called
264
+ ok 4 - should be equal
265
+ ok 5 - should not error
266
+ ok 6 - should be equal
267
+ 1..6
268
+ ok 4 - Calling reply.send() after hijacking logs a warning # time=1002.914ms
269
+
270
+ ok 8 - Hijacking inside handler skips all the following hooks and handler execution # time=2032.954ms
271
+
272
+ 1..8
@@ -0,0 +1,36 @@
1
+ TAP version 14
2
+ # Subtest: should respond with a stream
3
+ 1..6
4
+ ok 1 - should not error
5
+ ok 2 - should not error
6
+ ok 3 - should be equal
7
+ ok 4 - should be equal
8
+ ok 5 - should not error
9
+ ok 6 - should be equal
10
+ ok 1 - should respond with a stream # time=36.623ms
11
+
12
+ # Subtest: should respond with a stream (error)
13
+ 1..3
14
+ ok 1 - should not error
15
+ ok 2 - should not error
16
+ ok 3 - should be equal
17
+ ok 2 - should respond with a stream (error) # time=6.684ms
18
+
19
+ # Subtest: should trigger the onSend hook
20
+ 1..4
21
+ ok 1 - should be equal
22
+ ok 2 - should not error
23
+ ok 3 - should be equal
24
+ ok 4 - should be equal
25
+ ok 3 - should trigger the onSend hook # time=8.435ms
26
+
27
+ # Subtest: should trigger the onSend hook only twice if pumping the stream fails, first with the stream, second with the serialized error
28
+ 1..5
29
+ ok 1 - should not error
30
+ ok 2 - should be equal
31
+ ok 3 - should be equal
32
+ ok 4 - should not error
33
+ ok 5 - should be equal
34
+ ok 4 - should trigger the onSend hook only twice if pumping the stream fails, first with the stream, second with the serialized error # time=8.423ms
35
+
36
+ 1..4
@@ -0,0 +1,20 @@
1
+ TAP version 14
2
+ # Subtest: onSend hook stream
3
+ 1..4
4
+ ok 1 - should not error
5
+ ok 2 - should not error
6
+ ok 3 - should be equal
7
+ ok 4 - should be equal
8
+ ok 1 - onSend hook stream # time=26.278ms
9
+
10
+ # Subtest: onSend hook stream should work even if payload is not a proper stream
11
+ 1..1
12
+ ok 1 - should be equal
13
+ ok 2 - onSend hook stream should work even if payload is not a proper stream # time=10.09ms
14
+
15
+ # Subtest: onSend hook stream should work on payload with "close" ending function
16
+ 1..1
17
+ ok 1 - (unnamed test)
18
+ ok 3 - onSend hook stream should work on payload with "close" ending function # time=6.599ms
19
+
20
+ 1..3
@@ -0,0 +1,34 @@
1
+ TAP version 14
2
+ # Subtest: Destroying streams prematurely
3
+ 1..6
4
+ ok 1 - should not error
5
+ ok 2 - Received request
6
+ ok 3 - should be equal
7
+ ok 4 - Response closed
8
+ ok 5 - should be equal
9
+ ok 6 - should be equal
10
+ ok 1 - Destroying streams prematurely # time=34.225ms
11
+
12
+ # Subtest: Destroying streams prematurely should call close method
13
+ 1..7
14
+ ok 1 - should not error
15
+ ok 2 - Received request
16
+ ok 3 - should be equal
17
+ ok 4 - Response closed
18
+ ok 5 - should be equal
19
+ ok 6 - should be equal
20
+ ok 7 - should be equal
21
+ ok 2 - Destroying streams prematurely should call close method # time=5.874ms
22
+
23
+ # Subtest: Destroying streams prematurely should call close method when destroy is not a function
24
+ 1..7
25
+ ok 1 - should not error
26
+ ok 2 - Received request
27
+ ok 3 - should be equal
28
+ ok 4 - Response closed
29
+ ok 5 - should be equal
30
+ ok 6 - should be equal
31
+ ok 7 - should be equal
32
+ ok 3 - Destroying streams prematurely should call close method when destroy is not a function # time=6.887ms
33
+
34
+ 1..3
@@ -0,0 +1,40 @@
1
+ TAP version 14
2
+ # Subtest: Destroying streams prematurely should call abort method
3
+ 1..7
4
+ ok 1 - should not error
5
+ ok 2 - Received request
6
+ ok 3 - should be equal
7
+ ok 4 - Response closed
8
+ ok 5 - should be equal
9
+ ok 6 - should be equal
10
+ ok 7 - should be equal
11
+ ok 1 - Destroying streams prematurely should call abort method # time=41.605ms
12
+
13
+ # Subtest: Destroying streams prematurely, log is disabled
14
+ 1..4
15
+ ok 1 - should not error
16
+ ok 2 - should be equal
17
+ ok 3 - Response closed
18
+ ok 4 - should be equal
19
+ ok 2 - Destroying streams prematurely, log is disabled # time=5.579ms
20
+
21
+ # Subtest: should respond with a stream1
22
+ 1..5
23
+ ok 1 - should not error
24
+ ok 2 - should not error
25
+ ok 3 - should be equal
26
+ ok 4 - should be equal
27
+ ok 5 - should be equivalent
28
+ ok 3 - should respond with a stream1 # time=14.99ms
29
+
30
+ # Subtest: return a 404 if the stream emits a 404 error
31
+ 1..5
32
+ ok 1 - should not error
33
+ ok 2 - Received request
34
+ ok 3 - should not error
35
+ ok 4 - should be equal
36
+ ok 5 - should be equal
37
+ ok 4 - return a 404 if the stream emits a 404 error # time=9.276ms
38
+
39
+ ok 5 - should support send module 200 and 404 # SKIP
40
+ 1..5
@@ -0,0 +1,37 @@
1
+ TAP version 14
2
+ # Subtest: should destroy stream when response is ended
3
+ 1..4
4
+ ok 1 - should not error
5
+ ok 2 - should be equal
6
+ ok 3 - should not error
7
+ ok 4 - should be equal
8
+ ok 1 - should destroy stream when response is ended # time=32.624ms
9
+
10
+ # Subtest: should mark reply as sent before pumping the payload stream into response for async route handler
11
+ 1..3
12
+ ok 1 - should not error
13
+ ok 2 - should be equal
14
+ ok 3 - should be equal
15
+ ok 2 - should mark reply as sent before pumping the payload stream into response for async route handler # time=18.261ms
16
+
17
+ # Subtest: reply.send handles aborted requests
18
+ 1..2
19
+ ok 1 - should not error
20
+ ok 2 - should be equal
21
+ ok 3 - reply.send handles aborted requests # time=4.75ms
22
+
23
+ # Subtest: request terminated should not crash fastify
24
+ 1..10
25
+ ok 1 - should not error
26
+ ok 2 - should be equal
27
+ ok 3 - should be equal
28
+ ok 4 - should be equal
29
+ ok 5 - should be equal
30
+ ok 6 - should be equal
31
+ ok 7 - should be equal
32
+ ok 8 - should be equal
33
+ ok 9 - should be equal
34
+ ok 10 - should end properly
35
+ ok 4 - request terminated should not crash fastify # time=108.518ms
36
+
37
+ 1..4
@@ -0,0 +1,19 @@
1
+ TAP version 14
2
+ # Subtest: sync route
3
+ ok 1 - should be equal
4
+ ok 2 - should be equal
5
+ 1..2
6
+ ok 1 - sync route # time=15.732ms
7
+
8
+ # Subtest: sync route return null
9
+ ok 1 - should be equal
10
+ ok 2 - should be equal
11
+ 1..2
12
+ ok 2 - sync route return null # time=1.773ms
13
+
14
+ # Subtest: sync route, error
15
+ ok 1 - should be equal
16
+ 1..1
17
+ ok 3 - sync route, error # time=1.742ms
18
+
19
+ 1..3
@@ -0,0 +1,116 @@
1
+ TAP version 14
2
+ # Subtest: Fastify should throw on wrong options
3
+ 1..2
4
+ ok 1 - should be equal
5
+ ok 2 - (unnamed test)
6
+ ok 1 - Fastify should throw on wrong options # time=5.363ms
7
+
8
+ # Subtest: Fastify should throw on multiple assignment to the same route
9
+ 1..1
10
+ ok 1 - should be equal
11
+ ok 2 - Fastify should throw on multiple assignment to the same route # time=4.578ms
12
+
13
+ # Subtest: Fastify should throw for an invalid schema, printing the error route - headers
14
+ 1..2
15
+ ok 1 - should be equal
16
+ ok 2 - should match pattern
17
+ ok 3 - Fastify should throw for an invalid schema, printing the error route - headers # time=29.157ms
18
+
19
+ # Subtest: Fastify should throw for an invalid schema, printing the error route - body
20
+ 1..2
21
+ ok 1 - should be equal
22
+ ok 2 - should match pattern
23
+ ok 4 - Fastify should throw for an invalid schema, printing the error route - body # time=10.649ms
24
+
25
+ # Subtest: Fastify should throw for an invalid shorthand option type
26
+ 1..3
27
+ ok 1 - should be equal
28
+ ok 2 - should match pattern
29
+ ok 3 - (unnamed test)
30
+ ok 5 - Fastify should throw for an invalid shorthand option type # time=0.523ms
31
+
32
+ # Subtest: Should throw on unsupported method
33
+ 1..1
34
+ ok 1 - (unnamed test)
35
+ ok 6 - Should throw on unsupported method # time=0.445ms
36
+
37
+ # Subtest: Should throw on missing handler
38
+ 1..1
39
+ ok 1 - (unnamed test)
40
+ ok 7 - Should throw on missing handler # time=0.355ms
41
+
42
+ # Subtest: Should throw if one method is unsupported
43
+ 1..1
44
+ ok 1 - (unnamed test)
45
+ ok 8 - Should throw if one method is unsupported # time=0.344ms
46
+
47
+ # Subtest: Should throw on duplicate content type parser
48
+ 1..1
49
+ ok 1 - (unnamed test)
50
+ ok 9 - Should throw on duplicate content type parser # time=0.469ms
51
+
52
+ # Subtest: Should throw on duplicate decorator
53
+ 1..1
54
+ ok 1 - (unnamed test)
55
+ ok 10 - Should throw on duplicate decorator # time=0.392ms
56
+
57
+ # Subtest: Should not throw on duplicate decorator encapsulation
58
+ 1..1
59
+ ok 1 - expect to not throw
60
+ ok 11 - Should not throw on duplicate decorator encapsulation # time=1.474ms
61
+
62
+ # Subtest: Should throw on duplicate request decorator
63
+ 1..2
64
+ ok 1 - should be equal
65
+ ok 2 - should be equal
66
+ ok 12 - Should throw on duplicate request decorator # time=0.493ms
67
+
68
+ # Subtest: Should throw if request decorator dependencies are not met
69
+ 1..2
70
+ ok 1 - should be equal
71
+ ok 2 - should be equal
72
+ ok 13 - Should throw if request decorator dependencies are not met # time=0.39ms
73
+
74
+ # Subtest: Should throw on duplicate reply decorator
75
+ 1..1
76
+ ok 1 - should be equal
77
+ ok 14 - Should throw on duplicate reply decorator # time=0.39ms
78
+
79
+ # Subtest: Should throw if reply decorator dependencies are not met
80
+ 1..1
81
+ ok 1 - should be equal
82
+ ok 15 - Should throw if reply decorator dependencies are not met # time=0.375ms
83
+
84
+ # Subtest: Should throw if handler as the third parameter to the shortcut method is missing and the second parameter is not a function and also not an object
85
+ 1..5
86
+ ok 1 - (unnamed test)
87
+ ok 2 - (unnamed test)
88
+ ok 3 - (unnamed test)
89
+ ok 4 - (unnamed test)
90
+ ok 5 - (unnamed test)
91
+ ok 16 - Should throw if handler as the third parameter to the shortcut method is missing and the second parameter is not a function and also not an object # time=0.535ms
92
+
93
+ # Subtest: Should throw if handler as the third parameter to the shortcut method is missing and the second parameter is not a function and also not an object
94
+ 1..5
95
+ ok 1 - (unnamed test)
96
+ ok 2 - (unnamed test)
97
+ ok 3 - (unnamed test)
98
+ ok 4 - (unnamed test)
99
+ ok 5 - (unnamed test)
100
+ ok 17 - Should throw if handler as the third parameter to the shortcut method is missing and the second parameter is not a function and also not an object # time=0.511ms
101
+
102
+ # Subtest: Should throw if there is handler function as the third parameter to the shortcut method and options as the second parameter is not an object
103
+ 1..5
104
+ ok 1 - (unnamed test)
105
+ ok 2 - (unnamed test)
106
+ ok 3 - (unnamed test)
107
+ ok 4 - (unnamed test)
108
+ ok 5 - (unnamed test)
109
+ ok 18 - Should throw if there is handler function as the third parameter to the shortcut method and options as the second parameter is not an object # time=0.635ms
110
+
111
+ # Subtest: Should throw if found duplicate handler as the third parameter to the shortcut method and in options
112
+ 1..1
113
+ ok 1 - (unnamed test)
114
+ ok 19 - Should throw if found duplicate handler as the third parameter to the shortcut method and in options # time=1.191ms
115
+
116
+ 1..19
@@ -0,0 +1,7 @@
1
+ TAP version 14
2
+ # Subtest: shorthand - trace
3
+ 1..1
4
+ ok 1 - (unnamed test)
5
+ ok 1 - shorthand - trace # time=5.847ms
6
+
7
+ 1..1