@goast/kotlin 0.4.15 → 0.4.16-beta1

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 (529) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +45 -45
  3. package/assets/client/okhttp3/ApiClient.kt +252 -252
  4. package/esm/src/ast/references/java.d.ts +1 -0
  5. package/esm/src/ast/references/java.d.ts.map +1 -1
  6. package/esm/src/ast/references/java.js +1 -0
  7. package/esm/src/generators/models/model-generator.js +2 -2
  8. package/esm/src/generators/services/okhttp3-clients/args.d.ts +4 -0
  9. package/esm/src/generators/services/okhttp3-clients/args.d.ts.map +1 -1
  10. package/esm/src/generators/services/okhttp3-clients/okhttp3-client-generator.d.ts +1 -0
  11. package/esm/src/generators/services/okhttp3-clients/okhttp3-client-generator.d.ts.map +1 -1
  12. package/esm/src/generators/services/okhttp3-clients/okhttp3-client-generator.js +45 -32
  13. package/esm/src/generators/services/spring-controllers/args.d.ts +2 -0
  14. package/esm/src/generators/services/spring-controllers/args.d.ts.map +1 -1
  15. package/esm/src/generators/services/spring-controllers/spring-controller-generator.d.ts.map +1 -1
  16. package/esm/src/generators/services/spring-controllers/spring-controller-generator.js +37 -20
  17. package/package.json +2 -2
  18. package/script/src/ast/references/java.d.ts +1 -0
  19. package/script/src/ast/references/java.d.ts.map +1 -1
  20. package/script/src/ast/references/java.js +2 -1
  21. package/script/src/generators/models/model-generator.js +2 -2
  22. package/script/src/generators/services/okhttp3-clients/args.d.ts +4 -0
  23. package/script/src/generators/services/okhttp3-clients/args.d.ts.map +1 -1
  24. package/script/src/generators/services/okhttp3-clients/okhttp3-client-generator.d.ts +1 -0
  25. package/script/src/generators/services/okhttp3-clients/okhttp3-client-generator.d.ts.map +1 -1
  26. package/script/src/generators/services/okhttp3-clients/okhttp3-client-generator.js +45 -32
  27. package/script/src/generators/services/spring-controllers/args.d.ts +2 -0
  28. package/script/src/generators/services/spring-controllers/args.d.ts.map +1 -1
  29. package/script/src/generators/services/spring-controllers/spring-controller-generator.d.ts.map +1 -1
  30. package/script/src/generators/services/spring-controllers/spring-controller-generator.js +37 -20
  31. package/esm/_dnt.test_polyfills.d.ts +0 -29
  32. package/esm/_dnt.test_polyfills.d.ts.map +0 -1
  33. package/esm/_dnt.test_polyfills.js +0 -31
  34. package/esm/_dnt.test_shims.d.ts +0 -6
  35. package/esm/_dnt.test_shims.d.ts.map +0 -1
  36. package/esm/_dnt.test_shims.js +0 -61
  37. package/esm/deps/jsr.io/@std/assert/1.0.12/assertion_error.d.ts +0 -26
  38. package/esm/deps/jsr.io/@std/assert/1.0.12/assertion_error.d.ts.map +0 -1
  39. package/esm/deps/jsr.io/@std/assert/1.0.12/assertion_error.js +0 -30
  40. package/esm/deps/jsr.io/@std/assert/1.0.12/equal.d.ts +0 -17
  41. package/esm/deps/jsr.io/@std/assert/1.0.12/equal.d.ts.map +0 -1
  42. package/esm/deps/jsr.io/@std/assert/1.0.12/equal.js +0 -183
  43. package/esm/deps/jsr.io/@std/assert/1.0.12/equals.d.ts +0 -35
  44. package/esm/deps/jsr.io/@std/assert/1.0.12/equals.d.ts.map +0 -1
  45. package/esm/deps/jsr.io/@std/assert/1.0.12/equals.js +0 -58
  46. package/esm/deps/jsr.io/@std/assert/1.0.12/false.d.ts +0 -18
  47. package/esm/deps/jsr.io/@std/assert/1.0.12/false.d.ts.map +0 -1
  48. package/esm/deps/jsr.io/@std/assert/1.0.12/false.js +0 -22
  49. package/esm/deps/jsr.io/@std/assert/1.0.12/instance_of.d.ts +0 -23
  50. package/esm/deps/jsr.io/@std/assert/1.0.12/instance_of.d.ts.map +0 -1
  51. package/esm/deps/jsr.io/@std/assert/1.0.12/instance_of.js +0 -53
  52. package/esm/deps/jsr.io/@std/assert/1.0.12/is_error.d.ts +0 -25
  53. package/esm/deps/jsr.io/@std/assert/1.0.12/is_error.d.ts.map +0 -1
  54. package/esm/deps/jsr.io/@std/assert/1.0.12/is_error.js +0 -54
  55. package/esm/deps/jsr.io/@std/assert/1.0.12/match.d.ts +0 -18
  56. package/esm/deps/jsr.io/@std/assert/1.0.12/match.d.ts.map +0 -1
  57. package/esm/deps/jsr.io/@std/assert/1.0.12/match.js +0 -26
  58. package/esm/deps/jsr.io/@std/assert/1.0.12/not_instance_of.d.ts +0 -20
  59. package/esm/deps/jsr.io/@std/assert/1.0.12/not_instance_of.d.ts.map +0 -1
  60. package/esm/deps/jsr.io/@std/assert/1.0.12/not_instance_of.js +0 -29
  61. package/esm/deps/jsr.io/@std/assert/1.0.12/not_match.d.ts +0 -18
  62. package/esm/deps/jsr.io/@std/assert/1.0.12/not_match.d.ts.map +0 -1
  63. package/esm/deps/jsr.io/@std/assert/1.0.12/not_match.js +0 -26
  64. package/esm/deps/jsr.io/@std/assert/1.0.12/not_strict_equals.d.ts +0 -23
  65. package/esm/deps/jsr.io/@std/assert/1.0.12/not_strict_equals.d.ts.map +0 -1
  66. package/esm/deps/jsr.io/@std/assert/1.0.12/not_strict_equals.js +0 -32
  67. package/esm/deps/jsr.io/@std/assert/1.0.12/rejects.d.ts +0 -42
  68. package/esm/deps/jsr.io/@std/assert/1.0.12/rejects.d.ts.map +0 -1
  69. package/esm/deps/jsr.io/@std/assert/1.0.12/rejects.js +0 -53
  70. package/esm/deps/jsr.io/@std/assert/1.0.12/strict_equals.d.ts +0 -24
  71. package/esm/deps/jsr.io/@std/assert/1.0.12/strict_equals.d.ts.map +0 -1
  72. package/esm/deps/jsr.io/@std/assert/1.0.12/strict_equals.js +0 -57
  73. package/esm/deps/jsr.io/@std/expect/1.0.14/_assert_equals.d.ts +0 -20
  74. package/esm/deps/jsr.io/@std/expect/1.0.14/_assert_equals.d.ts.map +0 -1
  75. package/esm/deps/jsr.io/@std/expect/1.0.14/_assert_equals.js +0 -29
  76. package/esm/deps/jsr.io/@std/expect/1.0.14/_assert_is_error.d.ts +0 -14
  77. package/esm/deps/jsr.io/@std/expect/1.0.14/_assert_is_error.d.ts.map +0 -1
  78. package/esm/deps/jsr.io/@std/expect/1.0.14/_assert_is_error.js +0 -43
  79. package/esm/deps/jsr.io/@std/expect/1.0.14/_assert_not_equals.d.ts +0 -17
  80. package/esm/deps/jsr.io/@std/expect/1.0.14/_assert_not_equals.d.ts.map +0 -1
  81. package/esm/deps/jsr.io/@std/expect/1.0.14/_assert_not_equals.js +0 -26
  82. package/esm/deps/jsr.io/@std/expect/1.0.14/_assertions.d.ts +0 -4
  83. package/esm/deps/jsr.io/@std/expect/1.0.14/_assertions.d.ts.map +0 -1
  84. package/esm/deps/jsr.io/@std/expect/1.0.14/_assertions.js +0 -13
  85. package/esm/deps/jsr.io/@std/expect/1.0.14/_asymmetric_matchers.d.ts +0 -46
  86. package/esm/deps/jsr.io/@std/expect/1.0.14/_asymmetric_matchers.d.ts.map +0 -1
  87. package/esm/deps/jsr.io/@std/expect/1.0.14/_asymmetric_matchers.js +0 -161
  88. package/esm/deps/jsr.io/@std/expect/1.0.14/_build_message.d.ts +0 -6
  89. package/esm/deps/jsr.io/@std/expect/1.0.14/_build_message.d.ts.map +0 -1
  90. package/esm/deps/jsr.io/@std/expect/1.0.14/_build_message.js +0 -29
  91. package/esm/deps/jsr.io/@std/expect/1.0.14/_custom_equality_tester.d.ts +0 -4
  92. package/esm/deps/jsr.io/@std/expect/1.0.14/_custom_equality_tester.d.ts.map +0 -1
  93. package/esm/deps/jsr.io/@std/expect/1.0.14/_custom_equality_tester.js +0 -11
  94. package/esm/deps/jsr.io/@std/expect/1.0.14/_equal.d.ts +0 -9
  95. package/esm/deps/jsr.io/@std/expect/1.0.14/_equal.d.ts.map +0 -1
  96. package/esm/deps/jsr.io/@std/expect/1.0.14/_equal.js +0 -191
  97. package/esm/deps/jsr.io/@std/expect/1.0.14/_extend.d.ts +0 -4
  98. package/esm/deps/jsr.io/@std/expect/1.0.14/_extend.d.ts.map +0 -1
  99. package/esm/deps/jsr.io/@std/expect/1.0.14/_extend.js +0 -11
  100. package/esm/deps/jsr.io/@std/expect/1.0.14/_inspect_args.d.ts +0 -3
  101. package/esm/deps/jsr.io/@std/expect/1.0.14/_inspect_args.d.ts.map +0 -1
  102. package/esm/deps/jsr.io/@std/expect/1.0.14/_inspect_args.js +0 -12
  103. package/esm/deps/jsr.io/@std/expect/1.0.14/_matchers.d.ts +0 -34
  104. package/esm/deps/jsr.io/@std/expect/1.0.14/_matchers.d.ts.map +0 -1
  105. package/esm/deps/jsr.io/@std/expect/1.0.14/_matchers.js +0 -714
  106. package/esm/deps/jsr.io/@std/expect/1.0.14/_mock_util.d.ts +0 -11
  107. package/esm/deps/jsr.io/@std/expect/1.0.14/_mock_util.d.ts.map +0 -1
  108. package/esm/deps/jsr.io/@std/expect/1.0.14/_mock_util.js +0 -10
  109. package/esm/deps/jsr.io/@std/expect/1.0.14/_serializer.d.ts +0 -4
  110. package/esm/deps/jsr.io/@std/expect/1.0.14/_serializer.d.ts.map +0 -1
  111. package/esm/deps/jsr.io/@std/expect/1.0.14/_serializer.js +0 -10
  112. package/esm/deps/jsr.io/@std/expect/1.0.14/_types.d.ts +0 -843
  113. package/esm/deps/jsr.io/@std/expect/1.0.14/_types.d.ts.map +0 -1
  114. package/esm/deps/jsr.io/@std/expect/1.0.14/_types.js +0 -3
  115. package/esm/deps/jsr.io/@std/expect/1.0.14/_utils.d.ts +0 -9
  116. package/esm/deps/jsr.io/@std/expect/1.0.14/_utils.d.ts.map +0 -1
  117. package/esm/deps/jsr.io/@std/expect/1.0.14/_utils.js +0 -218
  118. package/esm/deps/jsr.io/@std/expect/1.0.14/expect.d.ts +0 -60
  119. package/esm/deps/jsr.io/@std/expect/1.0.14/expect.d.ts.map +0 -1
  120. package/esm/deps/jsr.io/@std/expect/1.0.14/expect.js +0 -523
  121. package/esm/deps/jsr.io/@std/internal/1.0.6/assertion_state.d.ts +0 -160
  122. package/esm/deps/jsr.io/@std/internal/1.0.6/assertion_state.d.ts.map +0 -1
  123. package/esm/deps/jsr.io/@std/internal/1.0.6/assertion_state.js +0 -200
  124. package/esm/deps/jsr.io/@std/internal/1.0.6/build_message.d.ts +0 -82
  125. package/esm/deps/jsr.io/@std/internal/1.0.6/build_message.d.ts.map +0 -1
  126. package/esm/deps/jsr.io/@std/internal/1.0.6/build_message.js +0 -111
  127. package/esm/deps/jsr.io/@std/internal/1.0.6/diff.d.ts +0 -140
  128. package/esm/deps/jsr.io/@std/internal/1.0.6/diff.d.ts.map +0 -1
  129. package/esm/deps/jsr.io/@std/internal/1.0.6/diff.js +0 -277
  130. package/esm/deps/jsr.io/@std/internal/1.0.6/diff_str.d.ts +0 -99
  131. package/esm/deps/jsr.io/@std/internal/1.0.6/diff_str.d.ts.map +0 -1
  132. package/esm/deps/jsr.io/@std/internal/1.0.6/diff_str.js +0 -183
  133. package/esm/deps/jsr.io/@std/internal/1.0.6/format.d.ts +0 -2
  134. package/esm/deps/jsr.io/@std/internal/1.0.6/format.d.ts.map +0 -1
  135. package/esm/deps/jsr.io/@std/internal/1.0.6/format.js +0 -37
  136. package/esm/deps/jsr.io/@std/internal/1.0.6/styles.d.ts +0 -159
  137. package/esm/deps/jsr.io/@std/internal/1.0.6/styles.d.ts.map +0 -1
  138. package/esm/deps/jsr.io/@std/internal/1.0.6/styles.js +0 -207
  139. package/esm/deps/jsr.io/@std/internal/1.0.6/types.d.ts +0 -16
  140. package/esm/deps/jsr.io/@std/internal/1.0.6/types.d.ts.map +0 -1
  141. package/esm/deps/jsr.io/@std/internal/1.0.6/types.js +0 -3
  142. package/esm/deps/jsr.io/@std/testing/1.0.10/_mock_utils.d.ts +0 -15
  143. package/esm/deps/jsr.io/@std/testing/1.0.10/_mock_utils.d.ts.map +0 -1
  144. package/esm/deps/jsr.io/@std/testing/1.0.10/_mock_utils.js +0 -35
  145. package/esm/deps/jsr.io/@std/testing/1.0.10/_test_suite.d.ts +0 -79
  146. package/esm/deps/jsr.io/@std/testing/1.0.10/_test_suite.d.ts.map +0 -1
  147. package/esm/deps/jsr.io/@std/testing/1.0.10/_test_suite.js +0 -380
  148. package/esm/deps/jsr.io/@std/testing/1.0.10/bdd.d.ts +0 -738
  149. package/esm/deps/jsr.io/@std/testing/1.0.10/bdd.d.ts.map +0 -1
  150. package/esm/deps/jsr.io/@std/testing/1.0.10/bdd.js +0 -654
  151. package/esm/deps/jsr.io/@std/testing/1.0.10/mock.d.ts +0 -674
  152. package/esm/deps/jsr.io/@std/testing/1.0.10/mock.d.ts.map +0 -1
  153. package/esm/deps/jsr.io/@std/testing/1.0.10/mock.js +0 -1083
  154. package/esm/src/ast/nodes/annotation.test.d.ts +0 -2
  155. package/esm/src/ast/nodes/annotation.test.d.ts.map +0 -1
  156. package/esm/src/ast/nodes/annotation.test.js +0 -56
  157. package/esm/src/ast/nodes/argument.test.d.ts +0 -2
  158. package/esm/src/ast/nodes/argument.test.d.ts.map +0 -1
  159. package/esm/src/ast/nodes/argument.test.js +0 -33
  160. package/esm/src/ast/nodes/call.test.d.ts +0 -2
  161. package/esm/src/ast/nodes/call.test.d.ts.map +0 -1
  162. package/esm/src/ast/nodes/call.test.js +0 -35
  163. package/esm/src/ast/nodes/class.test.d.ts +0 -2
  164. package/esm/src/ast/nodes/class.test.d.ts.map +0 -1
  165. package/esm/src/ast/nodes/class.test.js +0 -219
  166. package/esm/src/ast/nodes/constructor.test.d.ts +0 -2
  167. package/esm/src/ast/nodes/constructor.test.d.ts.map +0 -1
  168. package/esm/src/ast/nodes/constructor.test.js +0 -139
  169. package/esm/src/ast/nodes/doc-tag.test.d.ts +0 -2
  170. package/esm/src/ast/nodes/doc-tag.test.d.ts.map +0 -1
  171. package/esm/src/ast/nodes/doc-tag.test.js +0 -67
  172. package/esm/src/ast/nodes/doc.test.d.ts +0 -2
  173. package/esm/src/ast/nodes/doc.test.d.ts.map +0 -1
  174. package/esm/src/ast/nodes/doc.test.js +0 -33
  175. package/esm/src/ast/nodes/enum-value.test.d.ts +0 -2
  176. package/esm/src/ast/nodes/enum-value.test.d.ts.map +0 -1
  177. package/esm/src/ast/nodes/enum-value.test.js +0 -115
  178. package/esm/src/ast/nodes/enum.test.d.ts +0 -2
  179. package/esm/src/ast/nodes/enum.test.d.ts.map +0 -1
  180. package/esm/src/ast/nodes/enum.test.js +0 -129
  181. package/esm/src/ast/nodes/function.test.d.ts +0 -2
  182. package/esm/src/ast/nodes/function.test.d.ts.map +0 -1
  183. package/esm/src/ast/nodes/function.test.js +0 -160
  184. package/esm/src/ast/nodes/generic-parameter.test.d.ts +0 -2
  185. package/esm/src/ast/nodes/generic-parameter.test.d.ts.map +0 -1
  186. package/esm/src/ast/nodes/generic-parameter.test.js +0 -49
  187. package/esm/src/ast/nodes/init-block.test.d.ts +0 -2
  188. package/esm/src/ast/nodes/init-block.test.d.ts.map +0 -1
  189. package/esm/src/ast/nodes/init-block.test.js +0 -28
  190. package/esm/src/ast/nodes/interface.test.d.ts +0 -2
  191. package/esm/src/ast/nodes/interface.test.d.ts.map +0 -1
  192. package/esm/src/ast/nodes/interface.test.js +0 -121
  193. package/esm/src/ast/nodes/object.test.d.ts +0 -2
  194. package/esm/src/ast/nodes/object.test.d.ts.map +0 -1
  195. package/esm/src/ast/nodes/object.test.js +0 -78
  196. package/esm/src/ast/nodes/parameter.test.d.ts +0 -2
  197. package/esm/src/ast/nodes/parameter.test.d.ts.map +0 -1
  198. package/esm/src/ast/nodes/parameter.test.js +0 -152
  199. package/esm/src/ast/nodes/property.test.d.ts +0 -2
  200. package/esm/src/ast/nodes/property.test.d.ts.map +0 -1
  201. package/esm/src/ast/nodes/property.test.js +0 -206
  202. package/esm/src/ast/nodes/reference.test.d.ts +0 -2
  203. package/esm/src/ast/nodes/reference.test.d.ts.map +0 -1
  204. package/esm/src/ast/nodes/reference.test.js +0 -36
  205. package/esm/src/ast/nodes/string.test.d.ts +0 -2
  206. package/esm/src/ast/nodes/string.test.d.ts.map +0 -1
  207. package/esm/src/ast/nodes/string.test.js +0 -48
  208. package/esm/src/import-collection.test.d.ts +0 -2
  209. package/esm/src/import-collection.test.d.ts.map +0 -1
  210. package/esm/src/import-collection.test.js +0 -99
  211. package/esm/tests/openapi-models.test.d.ts +0 -2
  212. package/esm/tests/openapi-models.test.d.ts.map +0 -1
  213. package/esm/tests/openapi-models.test.js +0 -45
  214. package/script/_dnt.test_polyfills.d.ts +0 -29
  215. package/script/_dnt.test_polyfills.d.ts.map +0 -1
  216. package/script/_dnt.test_polyfills.js +0 -32
  217. package/script/_dnt.test_shims.d.ts +0 -6
  218. package/script/_dnt.test_shims.d.ts.map +0 -1
  219. package/script/_dnt.test_shims.js +0 -65
  220. package/script/deps/jsr.io/@std/assert/1.0.12/assertion_error.d.ts +0 -26
  221. package/script/deps/jsr.io/@std/assert/1.0.12/assertion_error.d.ts.map +0 -1
  222. package/script/deps/jsr.io/@std/assert/1.0.12/assertion_error.js +0 -34
  223. package/script/deps/jsr.io/@std/assert/1.0.12/equal.d.ts +0 -17
  224. package/script/deps/jsr.io/@std/assert/1.0.12/equal.d.ts.map +0 -1
  225. package/script/deps/jsr.io/@std/assert/1.0.12/equal.js +0 -187
  226. package/script/deps/jsr.io/@std/assert/1.0.12/equals.d.ts +0 -35
  227. package/script/deps/jsr.io/@std/assert/1.0.12/equals.d.ts.map +0 -1
  228. package/script/deps/jsr.io/@std/assert/1.0.12/equals.js +0 -61
  229. package/script/deps/jsr.io/@std/assert/1.0.12/false.d.ts +0 -18
  230. package/script/deps/jsr.io/@std/assert/1.0.12/false.d.ts.map +0 -1
  231. package/script/deps/jsr.io/@std/assert/1.0.12/false.js +0 -25
  232. package/script/deps/jsr.io/@std/assert/1.0.12/instance_of.d.ts +0 -23
  233. package/script/deps/jsr.io/@std/assert/1.0.12/instance_of.d.ts.map +0 -1
  234. package/script/deps/jsr.io/@std/assert/1.0.12/instance_of.js +0 -56
  235. package/script/deps/jsr.io/@std/assert/1.0.12/is_error.d.ts +0 -25
  236. package/script/deps/jsr.io/@std/assert/1.0.12/is_error.d.ts.map +0 -1
  237. package/script/deps/jsr.io/@std/assert/1.0.12/is_error.js +0 -57
  238. package/script/deps/jsr.io/@std/assert/1.0.12/match.d.ts +0 -18
  239. package/script/deps/jsr.io/@std/assert/1.0.12/match.d.ts.map +0 -1
  240. package/script/deps/jsr.io/@std/assert/1.0.12/match.js +0 -29
  241. package/script/deps/jsr.io/@std/assert/1.0.12/not_instance_of.d.ts +0 -20
  242. package/script/deps/jsr.io/@std/assert/1.0.12/not_instance_of.d.ts.map +0 -1
  243. package/script/deps/jsr.io/@std/assert/1.0.12/not_instance_of.js +0 -32
  244. package/script/deps/jsr.io/@std/assert/1.0.12/not_match.d.ts +0 -18
  245. package/script/deps/jsr.io/@std/assert/1.0.12/not_match.d.ts.map +0 -1
  246. package/script/deps/jsr.io/@std/assert/1.0.12/not_match.js +0 -29
  247. package/script/deps/jsr.io/@std/assert/1.0.12/not_strict_equals.d.ts +0 -23
  248. package/script/deps/jsr.io/@std/assert/1.0.12/not_strict_equals.d.ts.map +0 -1
  249. package/script/deps/jsr.io/@std/assert/1.0.12/not_strict_equals.js +0 -35
  250. package/script/deps/jsr.io/@std/assert/1.0.12/rejects.d.ts +0 -42
  251. package/script/deps/jsr.io/@std/assert/1.0.12/rejects.d.ts.map +0 -1
  252. package/script/deps/jsr.io/@std/assert/1.0.12/rejects.js +0 -56
  253. package/script/deps/jsr.io/@std/assert/1.0.12/strict_equals.d.ts +0 -24
  254. package/script/deps/jsr.io/@std/assert/1.0.12/strict_equals.d.ts.map +0 -1
  255. package/script/deps/jsr.io/@std/assert/1.0.12/strict_equals.js +0 -60
  256. package/script/deps/jsr.io/@std/expect/1.0.14/_assert_equals.d.ts +0 -20
  257. package/script/deps/jsr.io/@std/expect/1.0.14/_assert_equals.d.ts.map +0 -1
  258. package/script/deps/jsr.io/@std/expect/1.0.14/_assert_equals.js +0 -32
  259. package/script/deps/jsr.io/@std/expect/1.0.14/_assert_is_error.d.ts +0 -14
  260. package/script/deps/jsr.io/@std/expect/1.0.14/_assert_is_error.d.ts.map +0 -1
  261. package/script/deps/jsr.io/@std/expect/1.0.14/_assert_is_error.js +0 -46
  262. package/script/deps/jsr.io/@std/expect/1.0.14/_assert_not_equals.d.ts +0 -17
  263. package/script/deps/jsr.io/@std/expect/1.0.14/_assert_not_equals.d.ts.map +0 -1
  264. package/script/deps/jsr.io/@std/expect/1.0.14/_assert_not_equals.js +0 -29
  265. package/script/deps/jsr.io/@std/expect/1.0.14/_assertions.d.ts +0 -4
  266. package/script/deps/jsr.io/@std/expect/1.0.14/_assertions.d.ts.map +0 -1
  267. package/script/deps/jsr.io/@std/expect/1.0.14/_assertions.js +0 -18
  268. package/script/deps/jsr.io/@std/expect/1.0.14/_asymmetric_matchers.d.ts +0 -46
  269. package/script/deps/jsr.io/@std/expect/1.0.14/_asymmetric_matchers.d.ts.map +0 -1
  270. package/script/deps/jsr.io/@std/expect/1.0.14/_asymmetric_matchers.js +0 -183
  271. package/script/deps/jsr.io/@std/expect/1.0.14/_build_message.d.ts +0 -6
  272. package/script/deps/jsr.io/@std/expect/1.0.14/_build_message.d.ts.map +0 -1
  273. package/script/deps/jsr.io/@std/expect/1.0.14/_build_message.js +0 -33
  274. package/script/deps/jsr.io/@std/expect/1.0.14/_custom_equality_tester.d.ts +0 -4
  275. package/script/deps/jsr.io/@std/expect/1.0.14/_custom_equality_tester.d.ts.map +0 -1
  276. package/script/deps/jsr.io/@std/expect/1.0.14/_custom_equality_tester.js +0 -15
  277. package/script/deps/jsr.io/@std/expect/1.0.14/_equal.d.ts +0 -9
  278. package/script/deps/jsr.io/@std/expect/1.0.14/_equal.d.ts.map +0 -1
  279. package/script/deps/jsr.io/@std/expect/1.0.14/_equal.js +0 -194
  280. package/script/deps/jsr.io/@std/expect/1.0.14/_extend.d.ts +0 -4
  281. package/script/deps/jsr.io/@std/expect/1.0.14/_extend.d.ts.map +0 -1
  282. package/script/deps/jsr.io/@std/expect/1.0.14/_extend.js +0 -15
  283. package/script/deps/jsr.io/@std/expect/1.0.14/_inspect_args.d.ts +0 -3
  284. package/script/deps/jsr.io/@std/expect/1.0.14/_inspect_args.d.ts.map +0 -1
  285. package/script/deps/jsr.io/@std/expect/1.0.14/_inspect_args.js +0 -17
  286. package/script/deps/jsr.io/@std/expect/1.0.14/_matchers.d.ts +0 -34
  287. package/script/deps/jsr.io/@std/expect/1.0.14/_matchers.d.ts.map +0 -1
  288. package/script/deps/jsr.io/@std/expect/1.0.14/_matchers.js +0 -748
  289. package/script/deps/jsr.io/@std/expect/1.0.14/_mock_util.d.ts +0 -11
  290. package/script/deps/jsr.io/@std/expect/1.0.14/_mock_util.d.ts.map +0 -1
  291. package/script/deps/jsr.io/@std/expect/1.0.14/_mock_util.js +0 -14
  292. package/script/deps/jsr.io/@std/expect/1.0.14/_serializer.d.ts +0 -4
  293. package/script/deps/jsr.io/@std/expect/1.0.14/_serializer.d.ts.map +0 -1
  294. package/script/deps/jsr.io/@std/expect/1.0.14/_serializer.js +0 -14
  295. package/script/deps/jsr.io/@std/expect/1.0.14/_types.d.ts +0 -843
  296. package/script/deps/jsr.io/@std/expect/1.0.14/_types.d.ts.map +0 -1
  297. package/script/deps/jsr.io/@std/expect/1.0.14/_types.js +0 -4
  298. package/script/deps/jsr.io/@std/expect/1.0.14/_utils.d.ts +0 -9
  299. package/script/deps/jsr.io/@std/expect/1.0.14/_utils.d.ts.map +0 -1
  300. package/script/deps/jsr.io/@std/expect/1.0.14/_utils.js +0 -226
  301. package/script/deps/jsr.io/@std/expect/1.0.14/expect.d.ts +0 -60
  302. package/script/deps/jsr.io/@std/expect/1.0.14/expect.d.ts.map +0 -1
  303. package/script/deps/jsr.io/@std/expect/1.0.14/expect.js +0 -527
  304. package/script/deps/jsr.io/@std/internal/1.0.6/assertion_state.d.ts +0 -160
  305. package/script/deps/jsr.io/@std/internal/1.0.6/assertion_state.d.ts.map +0 -1
  306. package/script/deps/jsr.io/@std/internal/1.0.6/assertion_state.js +0 -205
  307. package/script/deps/jsr.io/@std/internal/1.0.6/build_message.d.ts +0 -82
  308. package/script/deps/jsr.io/@std/internal/1.0.6/build_message.d.ts.map +0 -1
  309. package/script/deps/jsr.io/@std/internal/1.0.6/build_message.js +0 -116
  310. package/script/deps/jsr.io/@std/internal/1.0.6/diff.d.ts +0 -140
  311. package/script/deps/jsr.io/@std/internal/1.0.6/diff.d.ts.map +0 -1
  312. package/script/deps/jsr.io/@std/internal/1.0.6/diff.js +0 -284
  313. package/script/deps/jsr.io/@std/internal/1.0.6/diff_str.d.ts +0 -99
  314. package/script/deps/jsr.io/@std/internal/1.0.6/diff_str.d.ts.map +0 -1
  315. package/script/deps/jsr.io/@std/internal/1.0.6/diff_str.js +0 -189
  316. package/script/deps/jsr.io/@std/internal/1.0.6/format.d.ts +0 -2
  317. package/script/deps/jsr.io/@std/internal/1.0.6/format.d.ts.map +0 -1
  318. package/script/deps/jsr.io/@std/internal/1.0.6/format.js +0 -41
  319. package/script/deps/jsr.io/@std/internal/1.0.6/styles.d.ts +0 -159
  320. package/script/deps/jsr.io/@std/internal/1.0.6/styles.d.ts.map +0 -1
  321. package/script/deps/jsr.io/@std/internal/1.0.6/styles.js +0 -220
  322. package/script/deps/jsr.io/@std/internal/1.0.6/types.d.ts +0 -16
  323. package/script/deps/jsr.io/@std/internal/1.0.6/types.d.ts.map +0 -1
  324. package/script/deps/jsr.io/@std/internal/1.0.6/types.js +0 -4
  325. package/script/deps/jsr.io/@std/testing/1.0.10/_mock_utils.d.ts +0 -15
  326. package/script/deps/jsr.io/@std/testing/1.0.10/_mock_utils.d.ts.map +0 -1
  327. package/script/deps/jsr.io/@std/testing/1.0.10/_mock_utils.js +0 -41
  328. package/script/deps/jsr.io/@std/testing/1.0.10/_test_suite.d.ts +0 -79
  329. package/script/deps/jsr.io/@std/testing/1.0.10/_test_suite.d.ts.map +0 -1
  330. package/script/deps/jsr.io/@std/testing/1.0.10/_test_suite.js +0 -385
  331. package/script/deps/jsr.io/@std/testing/1.0.10/bdd.d.ts +0 -738
  332. package/script/deps/jsr.io/@std/testing/1.0.10/bdd.d.ts.map +0 -1
  333. package/script/deps/jsr.io/@std/testing/1.0.10/bdd.js +0 -665
  334. package/script/deps/jsr.io/@std/testing/1.0.10/mock.d.ts +0 -674
  335. package/script/deps/jsr.io/@std/testing/1.0.10/mock.d.ts.map +0 -1
  336. package/script/deps/jsr.io/@std/testing/1.0.10/mock.js +0 -1102
  337. package/script/src/ast/nodes/annotation.test.d.ts +0 -2
  338. package/script/src/ast/nodes/annotation.test.d.ts.map +0 -1
  339. package/script/src/ast/nodes/annotation.test.js +0 -58
  340. package/script/src/ast/nodes/argument.test.d.ts +0 -2
  341. package/script/src/ast/nodes/argument.test.d.ts.map +0 -1
  342. package/script/src/ast/nodes/argument.test.js +0 -35
  343. package/script/src/ast/nodes/call.test.d.ts +0 -2
  344. package/script/src/ast/nodes/call.test.d.ts.map +0 -1
  345. package/script/src/ast/nodes/call.test.js +0 -37
  346. package/script/src/ast/nodes/class.test.d.ts +0 -2
  347. package/script/src/ast/nodes/class.test.d.ts.map +0 -1
  348. package/script/src/ast/nodes/class.test.js +0 -221
  349. package/script/src/ast/nodes/constructor.test.d.ts +0 -2
  350. package/script/src/ast/nodes/constructor.test.d.ts.map +0 -1
  351. package/script/src/ast/nodes/constructor.test.js +0 -141
  352. package/script/src/ast/nodes/doc-tag.test.d.ts +0 -2
  353. package/script/src/ast/nodes/doc-tag.test.d.ts.map +0 -1
  354. package/script/src/ast/nodes/doc-tag.test.js +0 -69
  355. package/script/src/ast/nodes/doc.test.d.ts +0 -2
  356. package/script/src/ast/nodes/doc.test.d.ts.map +0 -1
  357. package/script/src/ast/nodes/doc.test.js +0 -35
  358. package/script/src/ast/nodes/enum-value.test.d.ts +0 -2
  359. package/script/src/ast/nodes/enum-value.test.d.ts.map +0 -1
  360. package/script/src/ast/nodes/enum-value.test.js +0 -117
  361. package/script/src/ast/nodes/enum.test.d.ts +0 -2
  362. package/script/src/ast/nodes/enum.test.d.ts.map +0 -1
  363. package/script/src/ast/nodes/enum.test.js +0 -131
  364. package/script/src/ast/nodes/function.test.d.ts +0 -2
  365. package/script/src/ast/nodes/function.test.d.ts.map +0 -1
  366. package/script/src/ast/nodes/function.test.js +0 -162
  367. package/script/src/ast/nodes/generic-parameter.test.d.ts +0 -2
  368. package/script/src/ast/nodes/generic-parameter.test.d.ts.map +0 -1
  369. package/script/src/ast/nodes/generic-parameter.test.js +0 -51
  370. package/script/src/ast/nodes/init-block.test.d.ts +0 -2
  371. package/script/src/ast/nodes/init-block.test.d.ts.map +0 -1
  372. package/script/src/ast/nodes/init-block.test.js +0 -30
  373. package/script/src/ast/nodes/interface.test.d.ts +0 -2
  374. package/script/src/ast/nodes/interface.test.d.ts.map +0 -1
  375. package/script/src/ast/nodes/interface.test.js +0 -123
  376. package/script/src/ast/nodes/object.test.d.ts +0 -2
  377. package/script/src/ast/nodes/object.test.d.ts.map +0 -1
  378. package/script/src/ast/nodes/object.test.js +0 -80
  379. package/script/src/ast/nodes/parameter.test.d.ts +0 -2
  380. package/script/src/ast/nodes/parameter.test.d.ts.map +0 -1
  381. package/script/src/ast/nodes/parameter.test.js +0 -154
  382. package/script/src/ast/nodes/property.test.d.ts +0 -2
  383. package/script/src/ast/nodes/property.test.d.ts.map +0 -1
  384. package/script/src/ast/nodes/property.test.js +0 -208
  385. package/script/src/ast/nodes/reference.test.d.ts +0 -2
  386. package/script/src/ast/nodes/reference.test.d.ts.map +0 -1
  387. package/script/src/ast/nodes/reference.test.js +0 -38
  388. package/script/src/ast/nodes/string.test.d.ts +0 -2
  389. package/script/src/ast/nodes/string.test.d.ts.map +0 -1
  390. package/script/src/ast/nodes/string.test.js +0 -50
  391. package/script/src/import-collection.test.d.ts +0 -2
  392. package/script/src/import-collection.test.d.ts.map +0 -1
  393. package/script/src/import-collection.test.js +0 -101
  394. package/script/tests/openapi-models.test.d.ts +0 -2
  395. package/script/tests/openapi-models.test.d.ts.map +0 -1
  396. package/script/tests/openapi-models.test.js +0 -48
  397. package/src/_dnt.test_polyfills.ts +0 -70
  398. package/src/_dnt.test_shims.ts +0 -64
  399. package/src/deps/jsr.io/@std/assert/1.0.12/assertion_error.ts +0 -31
  400. package/src/deps/jsr.io/@std/assert/1.0.12/equal.ts +0 -210
  401. package/src/deps/jsr.io/@std/assert/1.0.12/equals.ts +0 -65
  402. package/src/deps/jsr.io/@std/assert/1.0.12/false.ts +0 -26
  403. package/src/deps/jsr.io/@std/assert/1.0.12/instance_of.ts +0 -64
  404. package/src/deps/jsr.io/@std/assert/1.0.12/is_error.ts +0 -65
  405. package/src/deps/jsr.io/@std/assert/1.0.12/match.ts +0 -30
  406. package/src/deps/jsr.io/@std/assert/1.0.12/not_instance_of.ts +0 -33
  407. package/src/deps/jsr.io/@std/assert/1.0.12/not_match.ts +0 -30
  408. package/src/deps/jsr.io/@std/assert/1.0.12/not_strict_equals.ts +0 -42
  409. package/src/deps/jsr.io/@std/assert/1.0.12/rejects.ts +0 -123
  410. package/src/deps/jsr.io/@std/assert/1.0.12/strict_equals.ts +0 -67
  411. package/src/deps/jsr.io/@std/expect/1.0.14/_assert_equals.ts +0 -38
  412. package/src/deps/jsr.io/@std/expect/1.0.14/_assert_is_error.ts +0 -54
  413. package/src/deps/jsr.io/@std/expect/1.0.14/_assert_not_equals.ts +0 -35
  414. package/src/deps/jsr.io/@std/expect/1.0.14/_assertions.ts +0 -18
  415. package/src/deps/jsr.io/@std/expect/1.0.14/_asymmetric_matchers.ts +0 -198
  416. package/src/deps/jsr.io/@std/expect/1.0.14/_build_message.ts +0 -51
  417. package/src/deps/jsr.io/@std/expect/1.0.14/_custom_equality_tester.ts +0 -19
  418. package/src/deps/jsr.io/@std/expect/1.0.14/_equal.ts +0 -230
  419. package/src/deps/jsr.io/@std/expect/1.0.14/_extend.ts +0 -16
  420. package/src/deps/jsr.io/@std/expect/1.0.14/_inspect_args.ts +0 -15
  421. package/src/deps/jsr.io/@std/expect/1.0.14/_matchers.ts +0 -1028
  422. package/src/deps/jsr.io/@std/expect/1.0.14/_mock_util.ts +0 -22
  423. package/src/deps/jsr.io/@std/expect/1.0.14/_serializer.ts +0 -15
  424. package/src/deps/jsr.io/@std/expect/1.0.14/_types.ts +0 -923
  425. package/src/deps/jsr.io/@std/expect/1.0.14/_utils.ts +0 -283
  426. package/src/deps/jsr.io/@std/expect/1.0.14/expect.ts +0 -620
  427. package/src/deps/jsr.io/@std/internal/1.0.6/assertion_state.ts +0 -215
  428. package/src/deps/jsr.io/@std/internal/1.0.6/build_message.ts +0 -134
  429. package/src/deps/jsr.io/@std/internal/1.0.6/diff.ts +0 -317
  430. package/src/deps/jsr.io/@std/internal/1.0.6/diff_str.ts +0 -208
  431. package/src/deps/jsr.io/@std/internal/1.0.6/format.ts +0 -39
  432. package/src/deps/jsr.io/@std/internal/1.0.6/styles.ts +0 -233
  433. package/src/deps/jsr.io/@std/internal/1.0.6/types.ts +0 -19
  434. package/src/deps/jsr.io/@std/testing/1.0.10/_mock_utils.ts +0 -43
  435. package/src/deps/jsr.io/@std/testing/1.0.10/_test_suite.ts +0 -448
  436. package/src/deps/jsr.io/@std/testing/1.0.10/bdd.ts +0 -1288
  437. package/src/deps/jsr.io/@std/testing/1.0.10/mock.ts +0 -1807
  438. package/src/mod.ts +0 -8
  439. package/src/src/assets.ts +0 -9
  440. package/src/src/ast/_index.ts +0 -66
  441. package/src/src/ast/common.ts +0 -1
  442. package/src/src/ast/index.ts +0 -1
  443. package/src/src/ast/node.ts +0 -10
  444. package/src/src/ast/nodes/annotation.test.ts +0 -69
  445. package/src/src/ast/nodes/annotation.ts +0 -79
  446. package/src/src/ast/nodes/argument.test.ts +0 -41
  447. package/src/src/ast/nodes/argument.ts +0 -62
  448. package/src/src/ast/nodes/call.test.ts +0 -44
  449. package/src/src/ast/nodes/call.ts +0 -66
  450. package/src/src/ast/nodes/class.test.ts +0 -274
  451. package/src/src/ast/nodes/class.ts +0 -178
  452. package/src/src/ast/nodes/collection-literal.ts +0 -49
  453. package/src/src/ast/nodes/constructor.test.ts +0 -178
  454. package/src/src/ast/nodes/constructor.ts +0 -126
  455. package/src/src/ast/nodes/doc-tag.test.ts +0 -84
  456. package/src/src/ast/nodes/doc-tag.ts +0 -138
  457. package/src/src/ast/nodes/doc.test.ts +0 -42
  458. package/src/src/ast/nodes/doc.ts +0 -111
  459. package/src/src/ast/nodes/enum-value.test.ts +0 -146
  460. package/src/src/ast/nodes/enum-value.ts +0 -100
  461. package/src/src/ast/nodes/enum.test.ts +0 -167
  462. package/src/src/ast/nodes/enum.ts +0 -163
  463. package/src/src/ast/nodes/function.test.ts +0 -194
  464. package/src/src/ast/nodes/function.ts +0 -178
  465. package/src/src/ast/nodes/generic-parameter.test.ts +0 -60
  466. package/src/src/ast/nodes/generic-parameter.ts +0 -54
  467. package/src/src/ast/nodes/init-block.test.ts +0 -36
  468. package/src/src/ast/nodes/init-block.ts +0 -38
  469. package/src/src/ast/nodes/interface.test.ts +0 -151
  470. package/src/src/ast/nodes/interface.ts +0 -133
  471. package/src/src/ast/nodes/lambda-type.ts +0 -68
  472. package/src/src/ast/nodes/lambda.ts +0 -68
  473. package/src/src/ast/nodes/object.test.ts +0 -101
  474. package/src/src/ast/nodes/object.ts +0 -102
  475. package/src/src/ast/nodes/parameter.test.ts +0 -191
  476. package/src/src/ast/nodes/parameter.ts +0 -118
  477. package/src/src/ast/nodes/property.test.ts +0 -253
  478. package/src/src/ast/nodes/property.ts +0 -225
  479. package/src/src/ast/nodes/reference.test.ts +0 -47
  480. package/src/src/ast/nodes/reference.ts +0 -178
  481. package/src/src/ast/nodes/string.test.ts +0 -61
  482. package/src/src/ast/nodes/string.ts +0 -114
  483. package/src/src/ast/nodes/types.ts +0 -23
  484. package/src/src/ast/references/index.ts +0 -8
  485. package/src/src/ast/references/jackson.ts +0 -16
  486. package/src/src/ast/references/jakarta.ts +0 -14
  487. package/src/src/ast/references/java.ts +0 -19
  488. package/src/src/ast/references/kotlin.ts +0 -41
  489. package/src/src/ast/references/okhttp3.ts +0 -5
  490. package/src/src/ast/references/reactor.ts +0 -5
  491. package/src/src/ast/references/spring.ts +0 -72
  492. package/src/src/ast/references/swagger.ts +0 -23
  493. package/src/src/ast/utils/get-kotlin-builder-options.ts +0 -19
  494. package/src/src/ast/utils/to-kt-node.ts +0 -31
  495. package/src/src/ast/utils/write-kt-annotations.ts +0 -15
  496. package/src/src/ast/utils/write-kt-arguments.ts +0 -45
  497. package/src/src/ast/utils/write-kt-enum-values.ts +0 -27
  498. package/src/src/ast/utils/write-kt-generic-parameters.ts +0 -12
  499. package/src/src/ast/utils/write-kt-members.ts +0 -25
  500. package/src/src/ast/utils/write-kt-node.ts +0 -37
  501. package/src/src/ast/utils/write-kt-parameters.ts +0 -25
  502. package/src/src/common-results.ts +0 -4
  503. package/src/src/config.ts +0 -41
  504. package/src/src/file-builder.ts +0 -108
  505. package/src/src/generators/file-generator.ts +0 -29
  506. package/src/src/generators/index.ts +0 -4
  507. package/src/src/generators/models/args.ts +0 -123
  508. package/src/src/generators/models/index.ts +0 -4
  509. package/src/src/generators/models/model-generator.ts +0 -653
  510. package/src/src/generators/models/models-generator.ts +0 -65
  511. package/src/src/generators/models/models.ts +0 -95
  512. package/src/src/generators/services/okhttp3-clients/args.ts +0 -78
  513. package/src/src/generators/services/okhttp3-clients/index.ts +0 -4
  514. package/src/src/generators/services/okhttp3-clients/models.ts +0 -62
  515. package/src/src/generators/services/okhttp3-clients/okhttp3-client-generator.ts +0 -567
  516. package/src/src/generators/services/okhttp3-clients/okhttp3-clients-generator.ts +0 -130
  517. package/src/src/generators/services/okhttp3-clients/refs.ts +0 -55
  518. package/src/src/generators/services/spring-controllers/args.ts +0 -88
  519. package/src/src/generators/services/spring-controllers/index.ts +0 -4
  520. package/src/src/generators/services/spring-controllers/models.ts +0 -71
  521. package/src/src/generators/services/spring-controllers/refs.ts +0 -17
  522. package/src/src/generators/services/spring-controllers/spring-controller-generator.ts +0 -782
  523. package/src/src/generators/services/spring-controllers/spring-controllers-generator.ts +0 -118
  524. package/src/src/import-collection.test.ts +0 -116
  525. package/src/src/import-collection.ts +0 -98
  526. package/src/src/types.ts +0 -3
  527. package/src/src/utils.ts +0 -39
  528. package/src/tests/openapi-models.test.ts +0 -63
  529. package/test_runner.js +0 -227
@@ -1,1028 +0,0 @@
1
- // Copyright 2018-2025 the Deno authors. MIT license.
2
-
3
- import { assertNotStrictEquals } from "../../assert/1.0.12/not_strict_equals.js";
4
- import { assertStrictEquals } from "../../assert/1.0.12/strict_equals.js";
5
- import { assertInstanceOf } from "../../assert/1.0.12/instance_of.js";
6
- import { assertIsError } from "./_assert_is_error.js";
7
- import { assertNotInstanceOf } from "../../assert/1.0.12/not_instance_of.js";
8
- import { assertMatch } from "../../assert/1.0.12/match.js";
9
- import { assertNotMatch } from "../../assert/1.0.12/not_match.js";
10
- import { AssertionError } from "../../assert/1.0.12/assertion_error.js";
11
-
12
- import { assertEquals } from "./_assert_equals.js";
13
- import { assertNotEquals } from "./_assert_not_equals.js";
14
- import { equal } from "./_equal.js";
15
- import { format } from "../../internal/1.0.6/format.js";
16
- import type { AnyConstructor, MatcherContext, MatchResult } from "./_types.js";
17
- import { getMockCalls } from "./_mock_util.js";
18
- import { inspectArg, inspectArgs } from "./_inspect_args.js";
19
- import {
20
- buildEqualOptions,
21
- iterableEquality,
22
- subsetEquality,
23
- } from "./_utils.js";
24
-
25
- export function toBe(context: MatcherContext, expect: unknown): MatchResult {
26
- if (context.isNot) {
27
- assertNotStrictEquals(context.value, expect, context.customMessage);
28
- } else {
29
- assertStrictEquals(context.value, expect, context.customMessage);
30
- }
31
- }
32
-
33
- export function toEqual(
34
- context: MatcherContext,
35
- expected: unknown,
36
- ): MatchResult {
37
- const v = context.value;
38
- const e = expected;
39
- const equalsOptions = buildEqualOptions({
40
- ...context,
41
- customTesters: [
42
- ...context.customTesters,
43
- iterableEquality,
44
- ],
45
- });
46
-
47
- if (context.isNot) {
48
- assertNotEquals(v, e, equalsOptions);
49
- } else {
50
- assertEquals(v, e, equalsOptions);
51
- }
52
- }
53
-
54
- export function toStrictEqual(
55
- context: MatcherContext,
56
- expected: unknown,
57
- ): MatchResult {
58
- const equalsOptions = buildEqualOptions({
59
- ...context,
60
- strictCheck: true,
61
- customTesters: [
62
- ...context.customTesters,
63
- iterableEquality,
64
- ],
65
- });
66
-
67
- if (context.isNot) {
68
- assertNotEquals(context.value, expected, equalsOptions);
69
- } else {
70
- assertEquals(context.value, expected, equalsOptions);
71
- }
72
- }
73
-
74
- export function toBeCloseTo(
75
- context: MatcherContext,
76
- expected: number,
77
- numDigits = 2,
78
- ): MatchResult {
79
- if (numDigits < 0) {
80
- throw new Error(
81
- "toBeCloseTo second argument must be a non-negative integer. Got " +
82
- numDigits,
83
- );
84
- }
85
- const tolerance = 0.5 * Math.pow(10, -numDigits);
86
- const value = Number(context.value);
87
- const pass = Math.abs(expected - value) < tolerance;
88
-
89
- if (context.isNot) {
90
- if (pass) {
91
- const defaultMessage =
92
- `Expected the value ${value} not to be close to ${expected} (using ${numDigits} digits), but it is`;
93
- throw new AssertionError(
94
- context.customMessage
95
- ? `${context.customMessage}: ${defaultMessage}`
96
- : defaultMessage,
97
- );
98
- }
99
- } else {
100
- if (!pass) {
101
- const defaultMessage =
102
- `Expected the value ${value} to be close to ${expected} (using ${numDigits} digits), but it is not`;
103
- throw new AssertionError(
104
- context.customMessage
105
- ? `${context.customMessage}: ${defaultMessage}`
106
- : defaultMessage,
107
- );
108
- }
109
- }
110
- }
111
-
112
- export function toBeDefined(context: MatcherContext): MatchResult {
113
- if (context.isNot) {
114
- assertStrictEquals(context.value, undefined, context.customMessage);
115
- } else {
116
- assertNotStrictEquals(context.value, undefined, context.customMessage);
117
- }
118
- }
119
-
120
- export function toBeUndefined(context: MatcherContext): MatchResult {
121
- if (context.isNot) {
122
- assertNotStrictEquals(
123
- context.value,
124
- undefined,
125
- context.customMessage,
126
- );
127
- } else {
128
- assertStrictEquals(context.value, undefined, context.customMessage);
129
- }
130
- }
131
-
132
- export function toBeFalsy(
133
- context: MatcherContext,
134
- ): MatchResult {
135
- const isFalsy = !(context.value);
136
- if (context.isNot) {
137
- if (isFalsy) {
138
- const defaultMessage = `Expected ${context.value} to NOT be falsy`;
139
- throw new AssertionError(
140
- context.customMessage
141
- ? `${context.customMessage}: ${defaultMessage}`
142
- : defaultMessage,
143
- );
144
- }
145
- } else {
146
- if (!isFalsy) {
147
- const defaultMessage = `Expected ${context.value} to be falsy`;
148
- throw new AssertionError(
149
- context.customMessage
150
- ? `${context.customMessage}: ${defaultMessage}`
151
- : defaultMessage,
152
- );
153
- }
154
- }
155
- }
156
-
157
- export function toBeTruthy(
158
- context: MatcherContext,
159
- ): MatchResult {
160
- const isTruthy = !!(context.value);
161
- if (context.isNot) {
162
- if (isTruthy) {
163
- const defaultMessage = `Expected ${context.value} to NOT be truthy`;
164
- throw new AssertionError(
165
- context.customMessage
166
- ? `${context.customMessage}: ${defaultMessage}`
167
- : defaultMessage,
168
- );
169
- }
170
- } else {
171
- if (!isTruthy) {
172
- const defaultMessage = `Expected ${context.value} to be truthy`;
173
- throw new AssertionError(
174
- context.customMessage
175
- ? `${context.customMessage}: ${defaultMessage}`
176
- : defaultMessage,
177
- );
178
- }
179
- }
180
- }
181
-
182
- export function toBeGreaterThanOrEqual(
183
- context: MatcherContext,
184
- expected: number,
185
- ): MatchResult {
186
- const isGreaterOrEqual = Number(context.value) >= Number(expected);
187
- if (context.isNot) {
188
- if (isGreaterOrEqual) {
189
- const defaultMessage =
190
- `Expected ${context.value} to NOT be greater than or equal ${expected}`;
191
- throw new AssertionError(
192
- context.customMessage
193
- ? `${context.customMessage}: ${defaultMessage}`
194
- : defaultMessage,
195
- );
196
- }
197
- } else {
198
- if (!isGreaterOrEqual) {
199
- const defaultMessage =
200
- `Expected ${context.value} to be greater than or equal ${expected}`;
201
- throw new AssertionError(
202
- context.customMessage
203
- ? `${context.customMessage}: ${defaultMessage}`
204
- : defaultMessage,
205
- );
206
- }
207
- }
208
- }
209
-
210
- export function toBeGreaterThan(
211
- context: MatcherContext,
212
- expected: number,
213
- ): MatchResult {
214
- const isGreater = Number(context.value) > Number(expected);
215
- if (context.isNot) {
216
- if (isGreater) {
217
- const defaultMessage =
218
- `Expected ${context.value} to NOT be greater than ${expected}`;
219
- throw new AssertionError(
220
- context.customMessage
221
- ? `${context.customMessage}: ${defaultMessage}`
222
- : defaultMessage,
223
- );
224
- }
225
- } else {
226
- if (!isGreater) {
227
- const defaultMessage =
228
- `Expected ${context.value} to be greater than ${expected}`;
229
- throw new AssertionError(
230
- context.customMessage
231
- ? `${context.customMessage}: ${defaultMessage}`
232
- : defaultMessage,
233
- );
234
- }
235
- }
236
- }
237
-
238
- export function toBeInstanceOf<T extends AnyConstructor>(
239
- context: MatcherContext,
240
- expected: T,
241
- ): MatchResult {
242
- if (context.isNot) {
243
- assertNotInstanceOf(context.value, expected);
244
- } else {
245
- assertInstanceOf(context.value, expected);
246
- }
247
- }
248
- export function toBeLessThanOrEqual(
249
- context: MatcherContext,
250
- expected: number,
251
- ): MatchResult {
252
- const isLower = Number(context.value) <= Number(expected);
253
- if (context.isNot) {
254
- if (isLower) {
255
- const defaultMessage =
256
- `Expected ${context.value} to NOT be lower than or equal ${expected}`;
257
- throw new AssertionError(
258
- context.customMessage
259
- ? `${context.customMessage}: ${defaultMessage}`
260
- : defaultMessage,
261
- );
262
- }
263
- } else {
264
- if (!isLower) {
265
- const defaultMessage =
266
- `Expected ${context.value} to be lower than or equal ${expected}`;
267
- throw new AssertionError(
268
- context.customMessage
269
- ? `${context.customMessage}: ${defaultMessage}`
270
- : defaultMessage,
271
- );
272
- }
273
- }
274
- }
275
- export function toBeLessThan(
276
- context: MatcherContext,
277
- expected: number,
278
- ): MatchResult {
279
- const isLower = Number(context.value) < Number(expected);
280
- if (context.isNot) {
281
- if (isLower) {
282
- const defaultMessage =
283
- `Expected ${context.value} to NOT be lower than ${expected}`;
284
- throw new AssertionError(
285
- context.customMessage
286
- ? `${context.customMessage}: ${defaultMessage}`
287
- : defaultMessage,
288
- );
289
- }
290
- } else {
291
- if (!isLower) {
292
- const defaultMessage =
293
- `Expected ${context.value} to be lower than ${expected}`;
294
- throw new AssertionError(
295
- context.customMessage
296
- ? `${context.customMessage}: ${defaultMessage}`
297
- : defaultMessage,
298
- );
299
- }
300
- }
301
- }
302
- export function toBeNaN(context: MatcherContext): MatchResult {
303
- const equalsOptions = buildEqualOptions(context);
304
- if (context.isNot) {
305
- assertNotEquals(
306
- isNaN(Number(context.value)),
307
- true,
308
- {
309
- ...equalsOptions,
310
- msg: equalsOptions.msg || `Expected ${context.value} to not be NaN`,
311
- },
312
- );
313
- } else {
314
- assertEquals(
315
- isNaN(Number(context.value)),
316
- true,
317
- {
318
- ...equalsOptions,
319
- msg: equalsOptions.msg || `Expected ${context.value} to be NaN`,
320
- },
321
- );
322
- }
323
- }
324
-
325
- export function toBeNull(context: MatcherContext): MatchResult {
326
- if (context.isNot) {
327
- assertNotStrictEquals(
328
- context.value as number,
329
- null,
330
- context.customMessage || `Expected ${context.value} to not be null`,
331
- );
332
- } else {
333
- assertStrictEquals(
334
- context.value as number,
335
- null,
336
- context.customMessage || `Expected ${context.value} to be null`,
337
- );
338
- }
339
- }
340
-
341
- export function toHaveLength(
342
- context: MatcherContext,
343
- expected: number,
344
- ): MatchResult {
345
- const { value } = context;
346
- // deno-lint-ignore no-explicit-any
347
- const maybeLength = (value as any)?.length;
348
- const hasLength = maybeLength === expected;
349
-
350
- if (context.isNot) {
351
- if (hasLength) {
352
- const defaultMessage =
353
- `Expected value not to have length ${expected}, but it does`;
354
- throw new AssertionError(
355
- context.customMessage
356
- ? `${context.customMessage}: ${defaultMessage}`
357
- : defaultMessage,
358
- );
359
- }
360
- } else {
361
- if (!hasLength) {
362
- const defaultMessage =
363
- `Expected value to have length ${expected}, but it does not: the value has length ${maybeLength}`;
364
- throw new AssertionError(
365
- context.customMessage
366
- ? `${context.customMessage}: ${defaultMessage}`
367
- : defaultMessage,
368
- );
369
- }
370
- }
371
- }
372
-
373
- export function toHaveProperty(
374
- context: MatcherContext,
375
- propName: string | string[],
376
- v?: unknown,
377
- ): MatchResult {
378
- const { value } = context;
379
-
380
- let propPath = [] as string[];
381
- if (Array.isArray(propName)) {
382
- propPath = propName;
383
- } else {
384
- propPath = propName.split(".");
385
- }
386
-
387
- // deno-lint-ignore no-explicit-any
388
- let current = value as any;
389
- while (true) {
390
- if (current === undefined || current === null) {
391
- break;
392
- }
393
- if (propPath.length === 0) {
394
- break;
395
- }
396
- const prop = propPath.shift()!;
397
- current = current[prop];
398
- }
399
-
400
- let hasProperty;
401
- if (v) {
402
- hasProperty = current !== undefined && propPath.length === 0 &&
403
- equal(current, v, context);
404
- } else {
405
- hasProperty = current !== undefined && propPath.length === 0;
406
- }
407
-
408
- let ofValue = "";
409
- if (v) {
410
- ofValue = ` of the value ${inspectArg(v)}`;
411
- }
412
-
413
- if (context.isNot) {
414
- if (hasProperty) {
415
- const defaultMessage = `Expected the value not to have the property ${
416
- propPath.join(".")
417
- }${ofValue}, but it does`;
418
- throw new AssertionError(
419
- context.customMessage
420
- ? `${context.customMessage}: ${defaultMessage}`
421
- : defaultMessage,
422
- );
423
- }
424
- } else {
425
- if (!hasProperty) {
426
- const defaultMessage = `Expected the value to have the property ${
427
- propPath.join(".")
428
- }${ofValue}, but it does not`;
429
- throw new AssertionError(
430
- context.customMessage
431
- ? `${context.customMessage}: ${defaultMessage}`
432
- : defaultMessage,
433
- );
434
- }
435
- }
436
- }
437
-
438
- export function toContain(
439
- context: MatcherContext,
440
- expected: unknown,
441
- ): MatchResult {
442
- // deno-lint-ignore no-explicit-any
443
- const doesContain = (context.value as any)?.includes?.(expected);
444
-
445
- const fmtValue = format(context.value);
446
- const fmtExpected = format(expected);
447
-
448
- if (context.isNot) {
449
- if (doesContain) {
450
- const defaultMessage =
451
- `The value ${fmtValue} contains the expected item ${fmtExpected}`;
452
- throw new AssertionError(
453
- context.customMessage
454
- ? `${context.customMessage}: ${defaultMessage}`
455
- : defaultMessage,
456
- );
457
- }
458
- } else {
459
- if (!doesContain) {
460
- const defaultMessage =
461
- `The value ${fmtValue} doesn't contain the expected item ${fmtExpected}`;
462
- throw new AssertionError(
463
- context.customMessage
464
- ? `${context.customMessage}: ${defaultMessage}`
465
- : defaultMessage,
466
- );
467
- }
468
- }
469
- }
470
-
471
- export function toContainEqual(
472
- context: MatcherContext,
473
- expected: unknown,
474
- ): MatchResult {
475
- const { value } = context;
476
- assertIsIterable(value);
477
- let doesContain = false;
478
-
479
- for (const item of value) {
480
- if (equal(item, expected, context)) {
481
- doesContain = true;
482
- break;
483
- }
484
- }
485
-
486
- const prettyStringify = (js: unknown) =>
487
- JSON.stringify(js, null, "\t")
488
- .replace(/\"|\n|\t/g, "")
489
- .slice(0, 100);
490
-
491
- const fmtValue = prettyStringify(context.value);
492
- const fmtExpected = prettyStringify(expected);
493
-
494
- if (context.isNot) {
495
- if (doesContain) {
496
- const defaultMessage = `The value contains the expected item:
497
- Value: ${fmtValue}
498
- Expected: ${fmtExpected}`;
499
- throw new AssertionError(
500
- context.customMessage
501
- ? `${context.customMessage}: ${defaultMessage}`
502
- : defaultMessage,
503
- );
504
- }
505
- } else {
506
- if (!doesContain) {
507
- const defaultMessage = `The value doesn't contain the expected item:
508
- Value: ${fmtValue}
509
- Expected: ${fmtExpected}`;
510
- throw new AssertionError(
511
- context.customMessage
512
- ? `${context.customMessage}: ${defaultMessage}`
513
- : defaultMessage,
514
- );
515
- }
516
- }
517
- }
518
-
519
- // deno-lint-ignore no-explicit-any
520
- function assertIsIterable(value: any): asserts value is Iterable<unknown> {
521
- if (value == null) {
522
- throw new AssertionError("The value is null or undefined");
523
- }
524
- if (typeof value[Symbol.iterator] !== "function") {
525
- throw new AssertionError("The value is not iterable");
526
- }
527
- }
528
-
529
- export function toMatch(
530
- context: MatcherContext,
531
- expected: RegExp,
532
- ): MatchResult {
533
- if (context.isNot) {
534
- assertNotMatch(
535
- String(context.value),
536
- expected,
537
- context.customMessage,
538
- );
539
- } else {
540
- assertMatch(String(context.value), expected, context.customMessage);
541
- }
542
- }
543
-
544
- export function toMatchObject(
545
- context: MatcherContext,
546
- expected: Record<PropertyKey, unknown> | Record<PropertyKey, unknown>[],
547
- ): MatchResult {
548
- const received = context.value;
549
-
550
- const defaultMsg = "Received value must be an object";
551
-
552
- if (typeof received !== "object" || received === null) {
553
- throw new AssertionError(
554
- context.customMessage
555
- ? `${context.customMessage}: ${defaultMsg}`
556
- : defaultMsg,
557
- );
558
- }
559
-
560
- if (typeof expected !== "object" || expected === null) {
561
- throw new AssertionError(
562
- context.customMessage
563
- ? `${context.customMessage}: ${defaultMsg}`
564
- : defaultMsg,
565
- );
566
- }
567
-
568
- const pass = equal(context.value, expected, {
569
- strictCheck: false,
570
- customTesters: [
571
- ...context.customTesters,
572
- iterableEquality,
573
- subsetEquality,
574
- ],
575
- });
576
-
577
- const triggerError = () => {
578
- const actualString = format(context.value);
579
- const expectedString = format(expected);
580
-
581
- if (context.isNot) {
582
- const defaultMessage =
583
- `Expected ${actualString} to NOT match ${expectedString}`;
584
- throw new AssertionError(
585
- context.customMessage
586
- ? `${context.customMessage}: ${defaultMessage}`
587
- : defaultMessage,
588
- );
589
- } else {
590
- const defaultMessage =
591
- `Expected ${actualString} to match ${expectedString}`;
592
- throw new AssertionError(
593
- context.customMessage
594
- ? `${context.customMessage}: ${defaultMessage}`
595
- : defaultMessage,
596
- );
597
- }
598
- };
599
-
600
- if (context.isNot && pass || !context.isNot && !pass) {
601
- triggerError();
602
- }
603
- }
604
-
605
- export function toHaveBeenCalled(context: MatcherContext): MatchResult {
606
- const calls = getMockCalls(context.value);
607
- const hasBeenCalled = calls.length > 0;
608
-
609
- if (context.isNot) {
610
- if (hasBeenCalled) {
611
- const defaultMessage =
612
- `Expected mock function not to be called, but it was called ${calls.length} time(s)`;
613
- throw new AssertionError(
614
- context.customMessage
615
- ? `${context.customMessage}: ${defaultMessage}`
616
- : defaultMessage,
617
- );
618
- }
619
- } else {
620
- if (!hasBeenCalled) {
621
- const defaultMessage =
622
- "Expected mock function to be called, but it was not called";
623
- throw new AssertionError(
624
- context.customMessage
625
- ? `${context.customMessage}: ${defaultMessage}`
626
- : defaultMessage,
627
- );
628
- }
629
- }
630
- }
631
-
632
- export function toHaveBeenCalledTimes(
633
- context: MatcherContext,
634
- expected: number,
635
- ): MatchResult {
636
- const calls = getMockCalls(context.value);
637
-
638
- if (context.isNot) {
639
- if (calls.length === expected) {
640
- const defaultMessage =
641
- `Expected mock function not to be called ${expected} time(s), but it was`;
642
- throw new AssertionError(
643
- context.customMessage
644
- ? `${context.customMessage}: ${defaultMessage}`
645
- : defaultMessage,
646
- );
647
- }
648
- } else {
649
- if (calls.length !== expected) {
650
- const defaultMessage =
651
- `Expected mock function to be called ${expected} time(s), but it was called ${calls.length} time(s)`;
652
- throw new AssertionError(
653
- context.customMessage
654
- ? `${context.customMessage}: ${defaultMessage}`
655
- : defaultMessage,
656
- );
657
- }
658
- }
659
- }
660
-
661
- export function toHaveBeenCalledWith(
662
- context: MatcherContext,
663
- ...expected: unknown[]
664
- ): MatchResult {
665
- const calls = getMockCalls(context.value);
666
- const hasBeenCalled = calls.some((call) => equal(call.args, expected));
667
-
668
- if (context.isNot) {
669
- if (hasBeenCalled) {
670
- const defaultMessage = `Expected mock function not to be called with ${
671
- inspectArgs(expected)
672
- }, but it was`;
673
- throw new AssertionError(
674
- context.customMessage
675
- ? `${context.customMessage}: ${defaultMessage}`
676
- : defaultMessage,
677
- );
678
- }
679
- } else {
680
- if (!hasBeenCalled) {
681
- let otherCalls = "";
682
- if (calls.length > 0) {
683
- otherCalls = `\n Other calls:\n ${
684
- calls.map((call) => inspectArgs(call.args)).join("\n ")
685
- }`;
686
- }
687
-
688
- const defaultMessage = `Expected mock function to be called with ${
689
- inspectArgs(expected)
690
- }, but it was not.${otherCalls}`;
691
- throw new AssertionError(
692
- context.customMessage
693
- ? `${context.customMessage}: ${defaultMessage}`
694
- : defaultMessage,
695
- );
696
- }
697
- }
698
- }
699
- export function toHaveBeenLastCalledWith(
700
- context: MatcherContext,
701
- ...expected: unknown[]
702
- ): MatchResult {
703
- const calls = getMockCalls(context.value);
704
- const hasBeenCalled = calls.length > 0 &&
705
- equal(calls.at(-1)?.args, expected);
706
-
707
- if (context.isNot) {
708
- if (hasBeenCalled) {
709
- const defaultMessage =
710
- `Expected mock function not to be last called with ${
711
- inspectArgs(expected)
712
- }, but it was`;
713
- throw new AssertionError(
714
- context.customMessage
715
- ? `${context.customMessage}: ${defaultMessage}`
716
- : defaultMessage,
717
- );
718
- }
719
- } else {
720
- if (!hasBeenCalled) {
721
- const lastCall = calls.at(-1);
722
- if (!lastCall) {
723
- const defaultMessage = `Expected mock function to be last called with ${
724
- inspectArgs(expected)
725
- }, but it was not`;
726
- throw new AssertionError(
727
- context.customMessage
728
- ? `${context.customMessage}: ${defaultMessage}`
729
- : defaultMessage,
730
- );
731
- } else {
732
- const defaultMessage = `Expected mock function to be last called with ${
733
- inspectArgs(expected)
734
- }, but it was last called with ${inspectArgs(lastCall.args)}`;
735
- throw new AssertionError(
736
- context.customMessage
737
- ? `${context.customMessage}: ${defaultMessage}`
738
- : defaultMessage,
739
- );
740
- }
741
- }
742
- }
743
- }
744
-
745
- export function toHaveBeenNthCalledWith(
746
- context: MatcherContext,
747
- nth: number,
748
- ...expected: unknown[]
749
- ): MatchResult {
750
- if (nth < 1) {
751
- throw new Error(`nth must be greater than 0: received ${nth}`);
752
- }
753
-
754
- const calls = getMockCalls(context.value);
755
- const callIndex = nth - 1;
756
- const hasBeenCalled = calls.length > callIndex &&
757
- equal(calls[callIndex]?.args, expected);
758
-
759
- if (context.isNot) {
760
- if (hasBeenCalled) {
761
- const defaultMessage =
762
- `Expected the n-th call (n=${nth}) of mock function is not with ${
763
- inspectArgs(expected)
764
- }, but it was`;
765
- throw new AssertionError(
766
- context.customMessage
767
- ? `${context.customMessage}: ${defaultMessage}`
768
- : defaultMessage,
769
- );
770
- }
771
- } else {
772
- if (!hasBeenCalled) {
773
- const nthCall = calls[callIndex];
774
- if (!nthCall) {
775
- const defaultMessage =
776
- `Expected the n-th call (n=${nth}) of mock function is with ${
777
- inspectArgs(expected)
778
- }, but the n-th call does not exist`;
779
- throw new AssertionError(
780
- context.customMessage
781
- ? `${context.customMessage}: ${defaultMessage}`
782
- : defaultMessage,
783
- );
784
- } else {
785
- const defaultMessage =
786
- `Expected the n-th call (n=${nth}) of mock function is with ${
787
- inspectArgs(expected)
788
- }, but it was with ${inspectArgs(nthCall.args)}`;
789
- throw new AssertionError(
790
- context.customMessage
791
- ? `${context.customMessage}: ${defaultMessage}`
792
- : defaultMessage,
793
- );
794
- }
795
- }
796
- }
797
- }
798
-
799
- export function toHaveReturned(context: MatcherContext): MatchResult {
800
- const calls = getMockCalls(context.value);
801
- const returned = calls.filter((call) => call.returns);
802
-
803
- if (context.isNot) {
804
- if (returned.length > 0) {
805
- const defaultMessage =
806
- `Expected the mock function to not have returned, but it returned ${returned.length} times`;
807
- throw new AssertionError(
808
- context.customMessage
809
- ? `${context.customMessage}: ${defaultMessage}`
810
- : defaultMessage,
811
- );
812
- }
813
- } else {
814
- if (returned.length === 0) {
815
- const defaultMessage =
816
- `Expected the mock function to have returned, but it did not return`;
817
- throw new AssertionError(
818
- context.customMessage
819
- ? `${context.customMessage}: ${defaultMessage}`
820
- : defaultMessage,
821
- );
822
- }
823
- }
824
- }
825
-
826
- export function toHaveReturnedTimes(
827
- context: MatcherContext,
828
- expected: number,
829
- ): MatchResult {
830
- const calls = getMockCalls(context.value);
831
- const returned = calls.filter((call) => call.returns);
832
-
833
- if (context.isNot) {
834
- if (returned.length === expected) {
835
- const defaultMessage =
836
- `Expected the mock function to not have returned ${expected} times, but it returned ${returned.length} times`;
837
- throw new AssertionError(
838
- context.customMessage
839
- ? `${context.customMessage}: ${defaultMessage}`
840
- : defaultMessage,
841
- );
842
- }
843
- } else {
844
- if (returned.length !== expected) {
845
- const defaultMessage =
846
- `Expected the mock function to have returned ${expected} times, but it returned ${returned.length} times`;
847
- throw new AssertionError(
848
- context.customMessage
849
- ? `${context.customMessage}: ${defaultMessage}`
850
- : defaultMessage,
851
- );
852
- }
853
- }
854
- }
855
- export function toHaveReturnedWith(
856
- context: MatcherContext,
857
- expected: unknown,
858
- ): MatchResult {
859
- const calls = getMockCalls(context.value);
860
- const returned = calls.filter((call) => call.returns);
861
- const returnedWithExpected = returned.some((call) =>
862
- equal(call.returned, expected)
863
- );
864
-
865
- if (context.isNot) {
866
- if (returnedWithExpected) {
867
- const defaultMessage =
868
- `Expected the mock function to not have returned with ${
869
- inspectArg(expected)
870
- }, but it did`;
871
- throw new AssertionError(
872
- context.customMessage
873
- ? `${context.customMessage}: ${defaultMessage}`
874
- : defaultMessage,
875
- );
876
- }
877
- } else {
878
- if (!returnedWithExpected) {
879
- const defaultMessage =
880
- `Expected the mock function to have returned with ${
881
- inspectArg(expected)
882
- }, but it did not`;
883
- throw new AssertionError(
884
- context.customMessage
885
- ? `${context.customMessage}: ${defaultMessage}`
886
- : defaultMessage,
887
- );
888
- }
889
- }
890
- }
891
-
892
- export function toHaveLastReturnedWith(
893
- context: MatcherContext,
894
- expected: unknown,
895
- ): MatchResult {
896
- const calls = getMockCalls(context.value);
897
- const returned = calls.filter((call) => call.returns);
898
- const lastReturnedWithExpected = returned.length > 0 &&
899
- equal(returned.at(-1)?.returned, expected);
900
-
901
- if (context.isNot) {
902
- if (lastReturnedWithExpected) {
903
- const defaultMessage =
904
- `Expected the mock function to not have last returned with ${
905
- inspectArg(expected)
906
- }, but it did`;
907
- throw new AssertionError(
908
- context.customMessage
909
- ? `${context.customMessage}: ${defaultMessage}`
910
- : defaultMessage,
911
- );
912
- }
913
- } else {
914
- if (!lastReturnedWithExpected) {
915
- const defaultMessage =
916
- `Expected the mock function to have last returned with ${
917
- inspectArg(expected)
918
- }, but it did not`;
919
- throw new AssertionError(
920
- context.customMessage
921
- ? `${context.customMessage}: ${defaultMessage}`
922
- : defaultMessage,
923
- );
924
- }
925
- }
926
- }
927
-
928
- export function toHaveNthReturnedWith(
929
- context: MatcherContext,
930
- nth: number,
931
- expected: unknown,
932
- ): MatchResult {
933
- if (nth < 1) {
934
- throw new Error(`nth(${nth}) must be greater than 0`);
935
- }
936
-
937
- const calls = getMockCalls(context.value);
938
- const returned = calls.filter((call) => call.returns);
939
- const returnIndex = nth - 1;
940
- const maybeNthReturned = returned[returnIndex];
941
- const nthReturnedWithExpected = maybeNthReturned &&
942
- equal(maybeNthReturned.returned, expected);
943
-
944
- if (context.isNot) {
945
- if (nthReturnedWithExpected) {
946
- const defaultMessage =
947
- `Expected the mock function to not have n-th (n=${nth}) returned with ${
948
- inspectArg(expected)
949
- }, but it did`;
950
- throw new AssertionError(
951
- context.customMessage
952
- ? `${context.customMessage}: ${defaultMessage}`
953
- : defaultMessage,
954
- );
955
- }
956
- } else {
957
- if (!nthReturnedWithExpected) {
958
- const defaultMessage =
959
- `Expected the mock function to have n-th (n=${nth}) returned with ${
960
- inspectArg(expected)
961
- }, but it did not`;
962
- throw new AssertionError(
963
- context.customMessage
964
- ? `${context.customMessage}: ${defaultMessage}`
965
- : defaultMessage,
966
- );
967
- }
968
- }
969
- }
970
-
971
- export function toThrow<E extends Error = Error>(
972
- context: MatcherContext,
973
- // deno-lint-ignore no-explicit-any
974
- expected?: string | RegExp | E | (new (...args: any[]) => E),
975
- ): MatchResult {
976
- if (typeof context.value === "function") {
977
- try {
978
- context.value = context.value();
979
- } catch (err) {
980
- context.value = err;
981
- }
982
- }
983
-
984
- // deno-lint-ignore no-explicit-any
985
- type ErrorClass = new (...args: any[]) => Error;
986
- let expectClass: undefined | ErrorClass = undefined;
987
- let expectMessage: undefined | string | RegExp = undefined;
988
- if (expected instanceof Error) {
989
- expectClass = expected.constructor as ErrorClass;
990
- expectMessage = expected.message;
991
- }
992
- if (expected instanceof Function) {
993
- expectClass = expected as ErrorClass;
994
- }
995
- if (typeof expected === "string" || expected instanceof RegExp) {
996
- expectMessage = expected;
997
- }
998
-
999
- if (context.isNot) {
1000
- let isError = false;
1001
- try {
1002
- assertIsError(
1003
- context.value,
1004
- expectClass,
1005
- expectMessage,
1006
- context.customMessage,
1007
- );
1008
- isError = true;
1009
- const defaultMessage = `Expected to NOT throw ${expected}`;
1010
- throw new AssertionError(
1011
- context.customMessage
1012
- ? `${context.customMessage}: ${defaultMessage}`
1013
- : defaultMessage,
1014
- );
1015
- } catch (e) {
1016
- if (isError) {
1017
- throw e;
1018
- }
1019
- return;
1020
- }
1021
- }
1022
- return assertIsError(
1023
- context.value,
1024
- expectClass,
1025
- expectMessage,
1026
- context.customMessage,
1027
- );
1028
- }