@restatedev/restate-sdk 1.3.2 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (416) hide show
  1. package/README.md +4 -4
  2. package/dist/cjs/src/context.d.ts +35 -2
  3. package/dist/cjs/src/context.d.ts.map +1 -1
  4. package/dist/cjs/src/context.js +8 -8
  5. package/dist/cjs/src/context.js.map +1 -1
  6. package/dist/cjs/src/context_impl.d.ts +61 -17
  7. package/dist/cjs/src/context_impl.d.ts.map +1 -1
  8. package/dist/cjs/src/context_impl.js +529 -316
  9. package/dist/cjs/src/context_impl.js.map +1 -1
  10. package/dist/cjs/src/endpoint/endpoint_builder.d.ts +2 -3
  11. package/dist/cjs/src/endpoint/endpoint_builder.d.ts.map +1 -1
  12. package/dist/cjs/src/endpoint/endpoint_builder.js +4 -9
  13. package/dist/cjs/src/endpoint/endpoint_builder.js.map +1 -1
  14. package/dist/cjs/src/endpoint/fetch_endpoint.d.ts +1 -2
  15. package/dist/cjs/src/endpoint/fetch_endpoint.d.ts.map +1 -1
  16. package/dist/cjs/src/endpoint/fetch_endpoint.js.map +1 -1
  17. package/dist/cjs/src/endpoint/handlers/generic.d.ts +15 -0
  18. package/dist/cjs/src/endpoint/handlers/generic.d.ts.map +1 -1
  19. package/dist/cjs/src/endpoint/handlers/generic.js +185 -83
  20. package/dist/cjs/src/endpoint/handlers/generic.js.map +1 -1
  21. package/dist/cjs/src/endpoint/handlers/vm/sdk_shared_core_wasm_bindings.d.ts +300 -0
  22. package/dist/cjs/src/endpoint/handlers/vm/sdk_shared_core_wasm_bindings.d.ts.map +1 -0
  23. package/dist/cjs/src/endpoint/handlers/vm/sdk_shared_core_wasm_bindings.js +1646 -0
  24. package/dist/cjs/src/endpoint/handlers/vm/sdk_shared_core_wasm_bindings.js.map +1 -0
  25. package/dist/cjs/src/endpoint/lambda_endpoint.d.ts +1 -2
  26. package/dist/cjs/src/endpoint/lambda_endpoint.d.ts.map +1 -1
  27. package/dist/cjs/src/endpoint/lambda_endpoint.js.map +1 -1
  28. package/dist/cjs/src/endpoint/node_endpoint.d.ts +1 -2
  29. package/dist/cjs/src/endpoint/node_endpoint.d.ts.map +1 -1
  30. package/dist/cjs/src/endpoint/node_endpoint.js.map +1 -1
  31. package/dist/cjs/src/generated/version.d.ts +1 -1
  32. package/dist/cjs/src/generated/version.js +1 -1
  33. package/dist/cjs/src/logger.js +1 -1
  34. package/dist/cjs/src/logger.js.map +1 -1
  35. package/dist/cjs/src/types/components.js +2 -2
  36. package/dist/cjs/src/types/components.js.map +1 -1
  37. package/dist/cjs/src/types/errors.d.ts +1 -32
  38. package/dist/cjs/src/types/errors.d.ts.map +1 -1
  39. package/dist/cjs/src/types/errors.js +9 -76
  40. package/dist/cjs/src/types/errors.js.map +1 -1
  41. package/dist/cjs/src/types/rpc.js +9 -9
  42. package/dist/cjs/src/types/rpc.js.map +1 -1
  43. package/dist/cjs/src/user_agent.d.ts +1 -1
  44. package/dist/cjs/src/utils/completable_promise.d.ts +9 -0
  45. package/dist/cjs/src/utils/completable_promise.d.ts.map +1 -0
  46. package/dist/cjs/src/utils/completable_promise.js +34 -0
  47. package/dist/cjs/src/utils/completable_promise.js.map +1 -0
  48. package/dist/cjs/src/utils/rand.d.ts +1 -1
  49. package/dist/cjs/src/utils/rand.d.ts.map +1 -1
  50. package/dist/cjs/src/utils/rand.js +1 -1
  51. package/dist/cjs/src/utils/rand.js.map +1 -1
  52. package/dist/cjs/tsconfig.tsbuildinfo +1 -1
  53. package/dist/esm/src/context.d.ts +35 -2
  54. package/dist/esm/src/context.d.ts.map +1 -1
  55. package/dist/esm/src/context.js +8 -8
  56. package/dist/esm/src/context.js.map +1 -1
  57. package/dist/esm/src/context_impl.d.ts +61 -17
  58. package/dist/esm/src/context_impl.d.ts.map +1 -1
  59. package/dist/esm/src/context_impl.js +531 -318
  60. package/dist/esm/src/context_impl.js.map +1 -1
  61. package/dist/esm/src/endpoint/endpoint_builder.d.ts +2 -3
  62. package/dist/esm/src/endpoint/endpoint_builder.d.ts.map +1 -1
  63. package/dist/esm/src/endpoint/endpoint_builder.js +4 -9
  64. package/dist/esm/src/endpoint/endpoint_builder.js.map +1 -1
  65. package/dist/esm/src/endpoint/fetch_endpoint.d.ts +1 -2
  66. package/dist/esm/src/endpoint/fetch_endpoint.d.ts.map +1 -1
  67. package/dist/esm/src/endpoint/fetch_endpoint.js.map +1 -1
  68. package/dist/esm/src/endpoint/handlers/generic.d.ts +15 -0
  69. package/dist/esm/src/endpoint/handlers/generic.d.ts.map +1 -1
  70. package/dist/esm/src/endpoint/handlers/generic.js +162 -84
  71. package/dist/esm/src/endpoint/handlers/generic.js.map +1 -1
  72. package/dist/esm/src/endpoint/handlers/vm/sdk_shared_core_wasm_bindings.d.ts +300 -0
  73. package/dist/esm/src/endpoint/handlers/vm/sdk_shared_core_wasm_bindings.d.ts.map +1 -0
  74. package/dist/esm/src/endpoint/handlers/vm/sdk_shared_core_wasm_bindings.js +1636 -0
  75. package/dist/esm/src/endpoint/handlers/vm/sdk_shared_core_wasm_bindings.js.map +1 -0
  76. package/dist/esm/src/endpoint/lambda_endpoint.d.ts +1 -2
  77. package/dist/esm/src/endpoint/lambda_endpoint.d.ts.map +1 -1
  78. package/dist/esm/src/endpoint/lambda_endpoint.js.map +1 -1
  79. package/dist/esm/src/endpoint/node_endpoint.d.ts +1 -2
  80. package/dist/esm/src/endpoint/node_endpoint.d.ts.map +1 -1
  81. package/dist/esm/src/endpoint/node_endpoint.js.map +1 -1
  82. package/dist/esm/src/generated/version.d.ts +1 -1
  83. package/dist/esm/src/generated/version.js +1 -1
  84. package/dist/esm/src/logger.js +1 -1
  85. package/dist/esm/src/logger.js.map +1 -1
  86. package/dist/esm/src/types/components.js +2 -2
  87. package/dist/esm/src/types/components.js.map +1 -1
  88. package/dist/esm/src/types/errors.d.ts +1 -32
  89. package/dist/esm/src/types/errors.d.ts.map +1 -1
  90. package/dist/esm/src/types/errors.js +8 -70
  91. package/dist/esm/src/types/errors.js.map +1 -1
  92. package/dist/esm/src/types/rpc.js +9 -9
  93. package/dist/esm/src/types/rpc.js.map +1 -1
  94. package/dist/esm/src/user_agent.d.ts +1 -1
  95. package/dist/esm/src/utils/completable_promise.d.ts +9 -0
  96. package/dist/esm/src/utils/completable_promise.d.ts.map +1 -0
  97. package/dist/esm/src/utils/completable_promise.js +30 -0
  98. package/dist/esm/src/utils/completable_promise.js.map +1 -0
  99. package/dist/esm/src/utils/rand.d.ts +1 -1
  100. package/dist/esm/src/utils/rand.d.ts.map +1 -1
  101. package/dist/esm/src/utils/rand.js +1 -1
  102. package/dist/esm/src/utils/rand.js.map +1 -1
  103. package/dist/esm/tsconfig.tsbuildinfo +1 -1
  104. package/package.json +2 -6
  105. package/dist/cjs/src/connection/connection.d.ts +0 -84
  106. package/dist/cjs/src/connection/connection.d.ts.map +0 -1
  107. package/dist/cjs/src/connection/connection.js +0 -181
  108. package/dist/cjs/src/connection/connection.js.map +0 -1
  109. package/dist/cjs/src/endpoint/request_signing/basex.d.ts +0 -10
  110. package/dist/cjs/src/endpoint/request_signing/basex.d.ts.map +0 -1
  111. package/dist/cjs/src/endpoint/request_signing/basex.js +0 -138
  112. package/dist/cjs/src/endpoint/request_signing/basex.js.map +0 -1
  113. package/dist/cjs/src/endpoint/request_signing/ed25519.d.ts +0 -17
  114. package/dist/cjs/src/endpoint/request_signing/ed25519.d.ts.map +0 -1
  115. package/dist/cjs/src/endpoint/request_signing/ed25519.js +0 -80
  116. package/dist/cjs/src/endpoint/request_signing/ed25519.js.map +0 -1
  117. package/dist/cjs/src/endpoint/request_signing/v1.d.ts +0 -10
  118. package/dist/cjs/src/endpoint/request_signing/v1.d.ts.map +0 -1
  119. package/dist/cjs/src/endpoint/request_signing/v1.js +0 -151
  120. package/dist/cjs/src/endpoint/request_signing/v1.js.map +0 -1
  121. package/dist/cjs/src/endpoint/request_signing/validate.d.ts +0 -19
  122. package/dist/cjs/src/endpoint/request_signing/validate.d.ts.map +0 -1
  123. package/dist/cjs/src/endpoint/request_signing/validate.js +0 -45
  124. package/dist/cjs/src/endpoint/request_signing/validate.js.map +0 -1
  125. package/dist/cjs/src/generated/proto/discovery_pb.d.ts +0 -18
  126. package/dist/cjs/src/generated/proto/discovery_pb.d.ts.map +0 -1
  127. package/dist/cjs/src/generated/proto/discovery_pb.js +0 -40
  128. package/dist/cjs/src/generated/proto/discovery_pb.js.map +0 -1
  129. package/dist/cjs/src/generated/proto/javascript_pb.d.ts +0 -26
  130. package/dist/cjs/src/generated/proto/javascript_pb.d.ts.map +0 -1
  131. package/dist/cjs/src/generated/proto/javascript_pb.js +0 -52
  132. package/dist/cjs/src/generated/proto/javascript_pb.js.map +0 -1
  133. package/dist/cjs/src/generated/proto/protocol_pb.d.ts +0 -1051
  134. package/dist/cjs/src/generated/proto/protocol_pb.d.ts.map +0 -1
  135. package/dist/cjs/src/generated/proto/protocol_pb.js +0 -1288
  136. package/dist/cjs/src/generated/proto/protocol_pb.js.map +0 -1
  137. package/dist/cjs/src/invocation.d.ts +0 -48
  138. package/dist/cjs/src/invocation.d.ts.map +0 -1
  139. package/dist/cjs/src/invocation.js +0 -158
  140. package/dist/cjs/src/invocation.js.map +0 -1
  141. package/dist/cjs/src/io/decoder.d.ts +0 -9
  142. package/dist/cjs/src/io/decoder.d.ts.map +0 -1
  143. package/dist/cjs/src/io/decoder.js +0 -137
  144. package/dist/cjs/src/io/decoder.js.map +0 -1
  145. package/dist/cjs/src/io/encoder.d.ts +0 -4
  146. package/dist/cjs/src/io/encoder.d.ts.map +0 -1
  147. package/dist/cjs/src/io/encoder.js +0 -41
  148. package/dist/cjs/src/io/encoder.js.map +0 -1
  149. package/dist/cjs/src/journal.d.ts +0 -52
  150. package/dist/cjs/src/journal.d.ts.map +0 -1
  151. package/dist/cjs/src/journal.js +0 -438
  152. package/dist/cjs/src/journal.js.map +0 -1
  153. package/dist/cjs/src/local_state_store.d.ts +0 -14
  154. package/dist/cjs/src/local_state_store.d.ts.map +0 -1
  155. package/dist/cjs/src/local_state_store.js +0 -83
  156. package/dist/cjs/src/local_state_store.js.map +0 -1
  157. package/dist/cjs/src/promise_combinator_tracker.d.ts +0 -29
  158. package/dist/cjs/src/promise_combinator_tracker.d.ts.map +0 -1
  159. package/dist/cjs/src/promise_combinator_tracker.js +0 -130
  160. package/dist/cjs/src/promise_combinator_tracker.js.map +0 -1
  161. package/dist/cjs/src/state_machine.d.ts +0 -85
  162. package/dist/cjs/src/state_machine.d.ts.map +0 -1
  163. package/dist/cjs/src/state_machine.js +0 -426
  164. package/dist/cjs/src/state_machine.js.map +0 -1
  165. package/dist/cjs/src/types/protocol.d.ts +0 -40
  166. package/dist/cjs/src/types/protocol.d.ts.map +0 -1
  167. package/dist/cjs/src/types/protocol.js +0 -237
  168. package/dist/cjs/src/types/protocol.js.map +0 -1
  169. package/dist/cjs/src/types/types.d.ts +0 -20
  170. package/dist/cjs/src/types/types.d.ts.map +0 -1
  171. package/dist/cjs/src/types/types.js +0 -110
  172. package/dist/cjs/src/types/types.js.map +0 -1
  173. package/dist/cjs/src/utils/message_logger.d.ts +0 -7
  174. package/dist/cjs/src/utils/message_logger.d.ts.map +0 -1
  175. package/dist/cjs/src/utils/message_logger.js +0 -79
  176. package/dist/cjs/src/utils/message_logger.js.map +0 -1
  177. package/dist/cjs/src/utils/promises.d.ts +0 -15
  178. package/dist/cjs/src/utils/promises.d.ts.map +0 -1
  179. package/dist/cjs/src/utils/promises.js +0 -68
  180. package/dist/cjs/src/utils/promises.js.map +0 -1
  181. package/dist/cjs/src/utils/utils.d.ts +0 -3
  182. package/dist/cjs/src/utils/utils.d.ts.map +0 -1
  183. package/dist/cjs/src/utils/utils.js +0 -105
  184. package/dist/cjs/src/utils/utils.js.map +0 -1
  185. package/dist/cjs/test/awakeable.test.d.ts +0 -2
  186. package/dist/cjs/test/awakeable.test.d.ts.map +0 -1
  187. package/dist/cjs/test/awakeable.test.js +0 -141
  188. package/dist/cjs/test/awakeable.test.js.map +0 -1
  189. package/dist/cjs/test/complete_awakeable.test.d.ts +0 -2
  190. package/dist/cjs/test/complete_awakeable.test.d.ts.map +0 -1
  191. package/dist/cjs/test/complete_awakeable.test.js +0 -123
  192. package/dist/cjs/test/complete_awakeable.test.js.map +0 -1
  193. package/dist/cjs/test/eager_state.test.d.ts +0 -2
  194. package/dist/cjs/test/eager_state.test.d.ts.map +0 -1
  195. package/dist/cjs/test/eager_state.test.js +0 -280
  196. package/dist/cjs/test/eager_state.test.js.map +0 -1
  197. package/dist/cjs/test/get_and_set_state.test.d.ts +0 -2
  198. package/dist/cjs/test/get_and_set_state.test.d.ts.map +0 -1
  199. package/dist/cjs/test/get_and_set_state.test.js +0 -233
  200. package/dist/cjs/test/get_and_set_state.test.js.map +0 -1
  201. package/dist/cjs/test/get_state.test.d.ts +0 -2
  202. package/dist/cjs/test/get_state.test.d.ts.map +0 -1
  203. package/dist/cjs/test/get_state.test.js +0 -328
  204. package/dist/cjs/test/get_state.test.js.map +0 -1
  205. package/dist/cjs/test/lambda.test.d.ts +0 -2
  206. package/dist/cjs/test/lambda.test.d.ts.map +0 -1
  207. package/dist/cjs/test/lambda.test.js +0 -258
  208. package/dist/cjs/test/lambda.test.js.map +0 -1
  209. package/dist/cjs/test/message_coders.test.d.ts +0 -2
  210. package/dist/cjs/test/message_coders.test.d.ts.map +0 -1
  211. package/dist/cjs/test/message_coders.test.js +0 -37
  212. package/dist/cjs/test/message_coders.test.js.map +0 -1
  213. package/dist/cjs/test/promise_combinator_tracker.test.d.ts +0 -2
  214. package/dist/cjs/test/promise_combinator_tracker.test.d.ts.map +0 -1
  215. package/dist/cjs/test/promise_combinator_tracker.test.js +0 -156
  216. package/dist/cjs/test/promise_combinator_tracker.test.js.map +0 -1
  217. package/dist/cjs/test/promise_combinators.test.d.ts +0 -2
  218. package/dist/cjs/test/promise_combinators.test.d.ts.map +0 -1
  219. package/dist/cjs/test/promise_combinators.test.js +0 -433
  220. package/dist/cjs/test/promise_combinators.test.js.map +0 -1
  221. package/dist/cjs/test/promises.test.d.ts +0 -2
  222. package/dist/cjs/test/promises.test.d.ts.map +0 -1
  223. package/dist/cjs/test/promises.test.js +0 -32
  224. package/dist/cjs/test/promises.test.js.map +0 -1
  225. package/dist/cjs/test/protocol_stream.test.d.ts +0 -2
  226. package/dist/cjs/test/protocol_stream.test.d.ts.map +0 -1
  227. package/dist/cjs/test/protocol_stream.test.js +0 -243
  228. package/dist/cjs/test/protocol_stream.test.js.map +0 -1
  229. package/dist/cjs/test/protoutils.d.ts +0 -44
  230. package/dist/cjs/test/protoutils.d.ts.map +0 -1
  231. package/dist/cjs/test/protoutils.js +0 -368
  232. package/dist/cjs/test/protoutils.js.map +0 -1
  233. package/dist/cjs/test/service_bind.test.d.ts +0 -2
  234. package/dist/cjs/test/service_bind.test.d.ts.map +0 -1
  235. package/dist/cjs/test/service_bind.test.js +0 -118
  236. package/dist/cjs/test/service_bind.test.js.map +0 -1
  237. package/dist/cjs/test/side_effect.test.d.ts +0 -2
  238. package/dist/cjs/test/side_effect.test.d.ts.map +0 -1
  239. package/dist/cjs/test/side_effect.test.js +0 -133
  240. package/dist/cjs/test/side_effect.test.js.map +0 -1
  241. package/dist/cjs/test/sleep.test.d.ts +0 -2
  242. package/dist/cjs/test/sleep.test.d.ts.map +0 -1
  243. package/dist/cjs/test/sleep.test.js +0 -224
  244. package/dist/cjs/test/sleep.test.js.map +0 -1
  245. package/dist/cjs/test/state_keys.test.d.ts +0 -2
  246. package/dist/cjs/test/state_keys.test.d.ts.map +0 -1
  247. package/dist/cjs/test/state_keys.test.js +0 -92
  248. package/dist/cjs/test/state_keys.test.js.map +0 -1
  249. package/dist/cjs/test/state_machine.test.d.ts +0 -2
  250. package/dist/cjs/test/state_machine.test.d.ts.map +0 -1
  251. package/dist/cjs/test/state_machine.test.js +0 -42
  252. package/dist/cjs/test/state_machine.test.js.map +0 -1
  253. package/dist/cjs/test/testdriver.d.ts +0 -39
  254. package/dist/cjs/test/testdriver.d.ts.map +0 -1
  255. package/dist/cjs/test/testdriver.js +0 -188
  256. package/dist/cjs/test/testdriver.js.map +0 -1
  257. package/dist/cjs/test/utils.test.d.ts +0 -2
  258. package/dist/cjs/test/utils.test.d.ts.map +0 -1
  259. package/dist/cjs/test/utils.test.js +0 -93
  260. package/dist/cjs/test/utils.test.js.map +0 -1
  261. package/dist/esm/src/connection/connection.d.ts +0 -84
  262. package/dist/esm/src/connection/connection.d.ts.map +0 -1
  263. package/dist/esm/src/connection/connection.js +0 -177
  264. package/dist/esm/src/connection/connection.js.map +0 -1
  265. package/dist/esm/src/endpoint/request_signing/basex.d.ts +0 -10
  266. package/dist/esm/src/endpoint/request_signing/basex.d.ts.map +0 -1
  267. package/dist/esm/src/endpoint/request_signing/basex.js +0 -136
  268. package/dist/esm/src/endpoint/request_signing/basex.js.map +0 -1
  269. package/dist/esm/src/endpoint/request_signing/ed25519.d.ts +0 -17
  270. package/dist/esm/src/endpoint/request_signing/ed25519.d.ts.map +0 -1
  271. package/dist/esm/src/endpoint/request_signing/ed25519.js +0 -52
  272. package/dist/esm/src/endpoint/request_signing/ed25519.js.map +0 -1
  273. package/dist/esm/src/endpoint/request_signing/v1.d.ts +0 -10
  274. package/dist/esm/src/endpoint/request_signing/v1.d.ts.map +0 -1
  275. package/dist/esm/src/endpoint/request_signing/v1.js +0 -143
  276. package/dist/esm/src/endpoint/request_signing/v1.js.map +0 -1
  277. package/dist/esm/src/endpoint/request_signing/validate.d.ts +0 -19
  278. package/dist/esm/src/endpoint/request_signing/validate.d.ts.map +0 -1
  279. package/dist/esm/src/endpoint/request_signing/validate.js +0 -40
  280. package/dist/esm/src/endpoint/request_signing/validate.js.map +0 -1
  281. package/dist/esm/src/generated/proto/discovery_pb.d.ts +0 -18
  282. package/dist/esm/src/generated/proto/discovery_pb.d.ts.map +0 -1
  283. package/dist/esm/src/generated/proto/discovery_pb.js +0 -37
  284. package/dist/esm/src/generated/proto/discovery_pb.js.map +0 -1
  285. package/dist/esm/src/generated/proto/javascript_pb.d.ts +0 -26
  286. package/dist/esm/src/generated/proto/javascript_pb.d.ts.map +0 -1
  287. package/dist/esm/src/generated/proto/javascript_pb.js +0 -48
  288. package/dist/esm/src/generated/proto/javascript_pb.js.map +0 -1
  289. package/dist/esm/src/generated/proto/protocol_pb.d.ts +0 -1051
  290. package/dist/esm/src/generated/proto/protocol_pb.d.ts.map +0 -1
  291. package/dist/esm/src/generated/proto/protocol_pb.js +0 -1258
  292. package/dist/esm/src/generated/proto/protocol_pb.js.map +0 -1
  293. package/dist/esm/src/invocation.d.ts +0 -48
  294. package/dist/esm/src/invocation.d.ts.map +0 -1
  295. package/dist/esm/src/invocation.js +0 -153
  296. package/dist/esm/src/invocation.js.map +0 -1
  297. package/dist/esm/src/io/decoder.d.ts +0 -9
  298. package/dist/esm/src/io/decoder.d.ts.map +0 -1
  299. package/dist/esm/src/io/decoder.js +0 -128
  300. package/dist/esm/src/io/decoder.js.map +0 -1
  301. package/dist/esm/src/io/encoder.d.ts +0 -4
  302. package/dist/esm/src/io/encoder.d.ts.map +0 -1
  303. package/dist/esm/src/io/encoder.js +0 -36
  304. package/dist/esm/src/io/encoder.js.map +0 -1
  305. package/dist/esm/src/journal.d.ts +0 -52
  306. package/dist/esm/src/journal.d.ts.map +0 -1
  307. package/dist/esm/src/journal.js +0 -410
  308. package/dist/esm/src/journal.js.map +0 -1
  309. package/dist/esm/src/local_state_store.d.ts +0 -14
  310. package/dist/esm/src/local_state_store.d.ts.map +0 -1
  311. package/dist/esm/src/local_state_store.js +0 -79
  312. package/dist/esm/src/local_state_store.js.map +0 -1
  313. package/dist/esm/src/promise_combinator_tracker.d.ts +0 -29
  314. package/dist/esm/src/promise_combinator_tracker.d.ts.map +0 -1
  315. package/dist/esm/src/promise_combinator_tracker.js +0 -125
  316. package/dist/esm/src/promise_combinator_tracker.js.map +0 -1
  317. package/dist/esm/src/state_machine.d.ts +0 -85
  318. package/dist/esm/src/state_machine.d.ts.map +0 -1
  319. package/dist/esm/src/state_machine.js +0 -399
  320. package/dist/esm/src/state_machine.js.map +0 -1
  321. package/dist/esm/src/types/protocol.d.ts +0 -40
  322. package/dist/esm/src/types/protocol.d.ts.map +0 -1
  323. package/dist/esm/src/types/protocol.js +0 -206
  324. package/dist/esm/src/types/protocol.js.map +0 -1
  325. package/dist/esm/src/types/types.d.ts +0 -20
  326. package/dist/esm/src/types/types.d.ts.map +0 -1
  327. package/dist/esm/src/types/types.js +0 -105
  328. package/dist/esm/src/types/types.js.map +0 -1
  329. package/dist/esm/src/utils/message_logger.d.ts +0 -7
  330. package/dist/esm/src/utils/message_logger.d.ts.map +0 -1
  331. package/dist/esm/src/utils/message_logger.js +0 -75
  332. package/dist/esm/src/utils/message_logger.js.map +0 -1
  333. package/dist/esm/src/utils/promises.d.ts +0 -15
  334. package/dist/esm/src/utils/promises.d.ts.map +0 -1
  335. package/dist/esm/src/utils/promises.js +0 -63
  336. package/dist/esm/src/utils/promises.js.map +0 -1
  337. package/dist/esm/src/utils/utils.d.ts +0 -3
  338. package/dist/esm/src/utils/utils.d.ts.map +0 -1
  339. package/dist/esm/src/utils/utils.js +0 -101
  340. package/dist/esm/src/utils/utils.js.map +0 -1
  341. package/dist/esm/test/awakeable.test.d.ts +0 -2
  342. package/dist/esm/test/awakeable.test.d.ts.map +0 -1
  343. package/dist/esm/test/awakeable.test.js +0 -139
  344. package/dist/esm/test/awakeable.test.js.map +0 -1
  345. package/dist/esm/test/complete_awakeable.test.d.ts +0 -2
  346. package/dist/esm/test/complete_awakeable.test.d.ts.map +0 -1
  347. package/dist/esm/test/complete_awakeable.test.js +0 -121
  348. package/dist/esm/test/complete_awakeable.test.js.map +0 -1
  349. package/dist/esm/test/eager_state.test.d.ts +0 -2
  350. package/dist/esm/test/eager_state.test.d.ts.map +0 -1
  351. package/dist/esm/test/eager_state.test.js +0 -278
  352. package/dist/esm/test/eager_state.test.js.map +0 -1
  353. package/dist/esm/test/get_and_set_state.test.d.ts +0 -2
  354. package/dist/esm/test/get_and_set_state.test.d.ts.map +0 -1
  355. package/dist/esm/test/get_and_set_state.test.js +0 -231
  356. package/dist/esm/test/get_and_set_state.test.js.map +0 -1
  357. package/dist/esm/test/get_state.test.d.ts +0 -2
  358. package/dist/esm/test/get_state.test.d.ts.map +0 -1
  359. package/dist/esm/test/get_state.test.js +0 -326
  360. package/dist/esm/test/get_state.test.js.map +0 -1
  361. package/dist/esm/test/lambda.test.d.ts +0 -2
  362. package/dist/esm/test/lambda.test.d.ts.map +0 -1
  363. package/dist/esm/test/lambda.test.js +0 -233
  364. package/dist/esm/test/lambda.test.js.map +0 -1
  365. package/dist/esm/test/message_coders.test.d.ts +0 -2
  366. package/dist/esm/test/message_coders.test.d.ts.map +0 -1
  367. package/dist/esm/test/message_coders.test.js +0 -35
  368. package/dist/esm/test/message_coders.test.js.map +0 -1
  369. package/dist/esm/test/promise_combinator_tracker.test.d.ts +0 -2
  370. package/dist/esm/test/promise_combinator_tracker.test.d.ts.map +0 -1
  371. package/dist/esm/test/promise_combinator_tracker.test.js +0 -154
  372. package/dist/esm/test/promise_combinator_tracker.test.js.map +0 -1
  373. package/dist/esm/test/promise_combinators.test.d.ts +0 -2
  374. package/dist/esm/test/promise_combinators.test.d.ts.map +0 -1
  375. package/dist/esm/test/promise_combinators.test.js +0 -431
  376. package/dist/esm/test/promise_combinators.test.js.map +0 -1
  377. package/dist/esm/test/promises.test.d.ts +0 -2
  378. package/dist/esm/test/promises.test.d.ts.map +0 -1
  379. package/dist/esm/test/promises.test.js +0 -30
  380. package/dist/esm/test/promises.test.js.map +0 -1
  381. package/dist/esm/test/protocol_stream.test.d.ts +0 -2
  382. package/dist/esm/test/protocol_stream.test.d.ts.map +0 -1
  383. package/dist/esm/test/protocol_stream.test.js +0 -218
  384. package/dist/esm/test/protocol_stream.test.js.map +0 -1
  385. package/dist/esm/test/protoutils.d.ts +0 -44
  386. package/dist/esm/test/protoutils.d.ts.map +0 -1
  387. package/dist/esm/test/protoutils.js +0 -335
  388. package/dist/esm/test/protoutils.js.map +0 -1
  389. package/dist/esm/test/service_bind.test.d.ts +0 -2
  390. package/dist/esm/test/service_bind.test.d.ts.map +0 -1
  391. package/dist/esm/test/service_bind.test.js +0 -93
  392. package/dist/esm/test/service_bind.test.js.map +0 -1
  393. package/dist/esm/test/side_effect.test.d.ts +0 -2
  394. package/dist/esm/test/side_effect.test.d.ts.map +0 -1
  395. package/dist/esm/test/side_effect.test.js +0 -131
  396. package/dist/esm/test/side_effect.test.js.map +0 -1
  397. package/dist/esm/test/sleep.test.d.ts +0 -2
  398. package/dist/esm/test/sleep.test.d.ts.map +0 -1
  399. package/dist/esm/test/sleep.test.js +0 -222
  400. package/dist/esm/test/sleep.test.js.map +0 -1
  401. package/dist/esm/test/state_keys.test.d.ts +0 -2
  402. package/dist/esm/test/state_keys.test.d.ts.map +0 -1
  403. package/dist/esm/test/state_keys.test.js +0 -90
  404. package/dist/esm/test/state_keys.test.js.map +0 -1
  405. package/dist/esm/test/state_machine.test.d.ts +0 -2
  406. package/dist/esm/test/state_machine.test.d.ts.map +0 -1
  407. package/dist/esm/test/state_machine.test.js +0 -40
  408. package/dist/esm/test/state_machine.test.js.map +0 -1
  409. package/dist/esm/test/testdriver.d.ts +0 -39
  410. package/dist/esm/test/testdriver.d.ts.map +0 -1
  411. package/dist/esm/test/testdriver.js +0 -182
  412. package/dist/esm/test/testdriver.js.map +0 -1
  413. package/dist/esm/test/utils.test.d.ts +0 -2
  414. package/dist/esm/test/utils.test.d.ts.map +0 -1
  415. package/dist/esm/test/utils.test.js +0 -91
  416. package/dist/esm/test/utils.test.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"promise_combinator_tracker.test.d.ts","sourceRoot":"","sources":["../../../test/promise_combinator_tracker.test.ts"],"names":[],"mappings":""}
@@ -1,154 +0,0 @@
1
- /*
2
- * Copyright (c) 2023-2024 - Restate Software, Inc., Restate GmbH
3
- *
4
- * This file is part of the Restate SDK for Node.js/TypeScript,
5
- * which is released under the MIT license.
6
- *
7
- * You can find a copy of the license in file LICENSE in the root
8
- * directory of this repository or package, or at
9
- * https://github.com/restatedev/sdk-typescript/blob/main/LICENSE
10
- */
11
- import { CompletablePromise } from "../src/utils/promises.js";
12
- import { newJournalEntryPromiseId, PromiseCombinatorTracker, } from "../src/promise_combinator_tracker.js";
13
- import { describe, expect, it } from "vitest";
14
- describe("PromiseCombinatorTracker with Promise.any", () => {
15
- it("should provide order in processing mode", async () => {
16
- const { completers, promises } = generateTestPromises(3);
17
- const testResultPromise = testCombinatorInProcessingMode(Promise.any.bind(Promise), promises);
18
- setImmediate(() => {
19
- // Any doesn't return on first reject
20
- completers[0].reject("bla");
21
- completers[2].resolve("my value");
22
- });
23
- // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
24
- const { order, result } = await testResultPromise;
25
- expect(result).toStrictEqual("my value");
26
- expect(order).toStrictEqual(createOrder(0, 2));
27
- });
28
- it("should provide order in processing mode, with partially resolved promises", async () => {
29
- const { completers, promises } = generateTestPromises(3);
30
- // Any doesn't return on first reject
31
- completers[0].reject("bla");
32
- const testResultPromise = testCombinatorInProcessingMode(Promise.any.bind(Promise), promises);
33
- setImmediate(() => {
34
- completers[2].resolve("my value");
35
- });
36
- // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
37
- const { order, result } = await testResultPromise;
38
- expect(result).toStrictEqual("my value");
39
- expect(order).toStrictEqual(createOrder(0, 2));
40
- });
41
- it("should provide order in processing mode, with all promises already resolved", async () => {
42
- const { completers, promises } = generateTestPromises(3);
43
- // Any doesn't return on first reject
44
- completers[0].reject("bla");
45
- completers[2].resolve("my value");
46
- const testResultPromise = testCombinatorInProcessingMode(Promise.any.bind(Promise), promises);
47
- // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
48
- const { order, result } = await testResultPromise;
49
- expect(result).toStrictEqual("my value");
50
- expect(order).toStrictEqual(createOrder(0, 2));
51
- });
52
- it("should replay correctly", async () => {
53
- const { completers, promises } = generateTestPromises(3);
54
- // This should not influence the result
55
- completers[1].resolve("another value");
56
- completers[2].resolve("my value");
57
- completers[0].reject("bla");
58
- const result = (await testCombinatorInReplayMode(Promise.any.bind(Promise), promises, createOrder(0, 2)));
59
- expect(result).toStrictEqual("my value");
60
- });
61
- });
62
- describe("PromiseCombinatorTracker with Promise.all", () => {
63
- it("should provide order in processing mode, with failing child", async () => {
64
- const { completers, promises } = generateTestPromises(3);
65
- const testResultPromise = testCombinatorInProcessingMode(Promise.all.bind(Promise), promises);
66
- setImmediate(() => {
67
- completers[2].resolve("my value");
68
- completers[0].reject("my error");
69
- });
70
- // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
71
- const { order, result } = await testResultPromise;
72
- expect(result).toStrictEqual("my error");
73
- expect(order).toStrictEqual(createOrder(2, 0));
74
- });
75
- it("should provide order in processing mode, with all success children", async () => {
76
- const { completers, promises } = generateTestPromises(3);
77
- const testResultPromise = testCombinatorInProcessingMode(Promise.all.bind(Promise), promises);
78
- setImmediate(() => {
79
- completers[2].resolve("my value 2");
80
- completers[0].resolve("my value 0");
81
- completers[1].resolve("my value 1");
82
- });
83
- // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
84
- const { order, result } = await testResultPromise;
85
- expect(result).toStrictEqual(["my value 0", "my value 1", "my value 2"]);
86
- expect(order).toStrictEqual(createOrder(2, 0, 1));
87
- });
88
- it("should replay correctly with failing child", async () => {
89
- const { completers, promises } = generateTestPromises(3);
90
- // This should not influence the result
91
- completers[1].resolve("should be irrelevant");
92
- completers[2].resolve("my value");
93
- completers[0].reject("my error");
94
- const result = (await testCombinatorInReplayMode(Promise.all.bind(Promise), promises, createOrder(2, 0)));
95
- expect(result).toStrictEqual("my error");
96
- });
97
- it("should replay correctly with all success children", async () => {
98
- const { completers, promises } = generateTestPromises(3);
99
- completers[2].resolve("my value 2");
100
- completers[0].resolve("my value 0");
101
- completers[1].resolve("my value 1");
102
- const result = (await testCombinatorInReplayMode(Promise.all.bind(Promise), promises, createOrder(2, 0, 1)));
103
- expect(result).toStrictEqual(["my value 0", "my value 1", "my value 2"]);
104
- });
105
- });
106
- // -- Some utility methods for these tests
107
- function generateTestPromises(n) {
108
- const completers = [];
109
- const promises = [];
110
- for (let i = 0; i < n; i++) {
111
- const completablePromise = new CompletablePromise();
112
- completers.push(completablePromise);
113
- promises.push({
114
- id: newJournalEntryPromiseId(i),
115
- promise: completablePromise.promise,
116
- });
117
- }
118
- return { completers, promises };
119
- }
120
- function createOrder(...numbers) {
121
- return numbers.map(newJournalEntryPromiseId);
122
- }
123
- async function testCombinatorInProcessingMode(combinatorConstructor, promises) {
124
- const resultMap = new Map();
125
- const tracker = new PromiseCombinatorTracker(() => {
126
- return undefined;
127
- }, (combinatorIndex, order) => {
128
- resultMap.set(combinatorIndex, order);
129
- return new Promise((r) => r());
130
- });
131
- return tracker.createCombinator(combinatorConstructor, promises).transform((result) => ({
132
- order: resultMap.get(0),
133
- result,
134
- }), (result) => ({
135
- order: resultMap.get(0),
136
- // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
137
- result,
138
- }));
139
- }
140
- async function testCombinatorInReplayMode(combinatorConstructor, promises, order) {
141
- const tracker = new PromiseCombinatorTracker((idx) => {
142
- expect(idx).toStrictEqual(0);
143
- return order;
144
- }, () => {
145
- throw new Error("Unexpected call");
146
- });
147
- return (tracker
148
- .createCombinator(combinatorConstructor, promises)
149
- // To make sure it behaves like testCombinatorInProcessingMode and always succeeds
150
- .transform((v) => v,
151
- // eslint-disable-next-line @typescript-eslint/no-unsafe-return
152
- (e) => e));
153
- }
154
- //# sourceMappingURL=promise_combinator_tracker.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"promise_combinator_tracker.test.js","sourceRoot":"","sources":["../../../test/promise_combinator_tracker.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=promise_combinators.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"promise_combinators.test.d.ts","sourceRoot":"","sources":["../../../test/promise_combinators.test.ts"],"names":[],"mappings":""}
@@ -1,431 +0,0 @@
1
- /*
2
- * Copyright (c) 2023-2024 - Restate Software, Inc., Restate GmbH
3
- *
4
- * This file is part of the Restate SDK for Node.js/TypeScript,
5
- * which is released under the MIT license.
6
- *
7
- * You can find a copy of the license in file LICENSE in the root
8
- * directory of this repository or package, or at
9
- * https://github.com/restatedev/sdk-typescript/blob/main/LICENSE
10
- */
11
- import { GreeterApi, TestDriver, TestResponse } from "./testdriver.js";
12
- import { awakeableMessage, completionMessage, getAwakeableId, greetRequest, greetResponse, inputMessage, outputMessage, startMessage, suspensionMessage, END_MESSAGE, combinatorEntryMessage, sleepMessage, sideEffectMessage, ackMessage, invokeMessage, } from "./protoutils.js";
13
- import { COMBINATOR_ENTRY_MESSAGE, SLEEP_ENTRY_MESSAGE_TYPE, } from "../src/types/protocol.js";
14
- import { TimeoutError } from "../src/types/errors.js";
15
- import { CombineablePromise } from "../src/context.js";
16
- import { Empty } from "../src/generated/proto/protocol_pb.js";
17
- import { Buffer } from "node:buffer";
18
- import { describe, expect, it } from "vitest";
19
- class AwakeableSleepRaceGreeter {
20
- async greet(ctx) {
21
- const awakeable = ctx.awakeable();
22
- const sleep = ctx.sleep(1);
23
- const result = await CombineablePromise.race([awakeable.promise, sleep]);
24
- if (typeof result === "string") {
25
- return TestResponse.create({
26
- greeting: `Hello ${result} for ${awakeable.id}`,
27
- });
28
- }
29
- return TestResponse.create({
30
- greeting: `Hello timed-out`,
31
- });
32
- }
33
- }
34
- describe("AwakeableSleepRaceGreeter", () => {
35
- it("should suspend without completions", async () => {
36
- const result = await new TestDriver(new AwakeableSleepRaceGreeter(), [
37
- startMessage(),
38
- inputMessage(greetRequest("Till")),
39
- ]).run();
40
- expect(result.length).toStrictEqual(3);
41
- expect(result[0]).toStrictEqual(awakeableMessage());
42
- expect(result[1].messageType).toStrictEqual(SLEEP_ENTRY_MESSAGE_TYPE);
43
- expect(result[2]).toStrictEqual(suspensionMessage([1, 2]));
44
- });
45
- it("handles completion of awakeable", async () => {
46
- const result = await new TestDriver(new AwakeableSleepRaceGreeter(), [
47
- startMessage(),
48
- inputMessage(greetRequest("Till")),
49
- completionMessage(1, JSON.stringify("Francesco")),
50
- ackMessage(3),
51
- ]).run();
52
- expect(result.length).toStrictEqual(5);
53
- expect(result[0]).toStrictEqual(awakeableMessage());
54
- expect(result[1].messageType).toStrictEqual(SLEEP_ENTRY_MESSAGE_TYPE);
55
- expect(result.slice(2)).toStrictEqual([
56
- combinatorEntryMessage(0, [1]),
57
- outputMessage(greetResponse(`Hello Francesco for ${getAwakeableId(1)}`)),
58
- END_MESSAGE,
59
- ]);
60
- });
61
- it("handles completion of sleep", async () => {
62
- const result = await new TestDriver(new AwakeableSleepRaceGreeter(), [
63
- startMessage(),
64
- inputMessage(greetRequest("Till")),
65
- completionMessage(2, undefined, true),
66
- ackMessage(3),
67
- ]).run();
68
- expect(result.length).toStrictEqual(5);
69
- expect(result[0]).toStrictEqual(awakeableMessage());
70
- expect(result[1].messageType).toStrictEqual(SLEEP_ENTRY_MESSAGE_TYPE);
71
- expect(result.slice(2)).toStrictEqual([
72
- combinatorEntryMessage(0, [2]),
73
- outputMessage(greetResponse(`Hello timed-out`)),
74
- END_MESSAGE,
75
- ]);
76
- });
77
- it("handles replay of the awakeable", async () => {
78
- const result = await new TestDriver(new AwakeableSleepRaceGreeter(), [
79
- startMessage(),
80
- inputMessage(greetRequest("Till")),
81
- awakeableMessage("Francesco"),
82
- ackMessage(3),
83
- ]).run();
84
- expect(result.length).toStrictEqual(4);
85
- expect(result[0].messageType).toStrictEqual(SLEEP_ENTRY_MESSAGE_TYPE);
86
- expect(result.slice(1)).toStrictEqual([
87
- combinatorEntryMessage(0, [1]),
88
- outputMessage(greetResponse(`Hello Francesco for ${getAwakeableId(1)}`)),
89
- END_MESSAGE,
90
- ]);
91
- });
92
- it("handles replay of the awakeable and sleep", async () => {
93
- const result = await new TestDriver(new AwakeableSleepRaceGreeter(), [
94
- startMessage(),
95
- inputMessage(greetRequest("Till")),
96
- awakeableMessage("Francesco"),
97
- sleepMessage(1),
98
- ackMessage(3),
99
- ]).run();
100
- expect(result).toStrictEqual([
101
- // The awakeable will be chosen because Promise.race will pick the first promise, in case both are resolved
102
- combinatorEntryMessage(0, [1]),
103
- outputMessage(greetResponse(`Hello Francesco for ${getAwakeableId(1)}`)),
104
- END_MESSAGE,
105
- ]);
106
- });
107
- it("handles replay of the combinator with awakeable completed", async () => {
108
- const result = await new TestDriver(new AwakeableSleepRaceGreeter(), [
109
- startMessage(),
110
- inputMessage(greetRequest("Till")),
111
- awakeableMessage("Francesco"),
112
- sleepMessage(1),
113
- combinatorEntryMessage(0, [1]),
114
- ]).run();
115
- expect(result).toStrictEqual([
116
- outputMessage(greetResponse(`Hello Francesco for ${getAwakeableId(1)}`)),
117
- END_MESSAGE,
118
- ]);
119
- });
120
- it("handles replay of the combinator with sleep completed", async () => {
121
- const result = await new TestDriver(new AwakeableSleepRaceGreeter(), [
122
- startMessage(),
123
- inputMessage(greetRequest("Till")),
124
- awakeableMessage(),
125
- sleepMessage(1, new Empty()),
126
- combinatorEntryMessage(0, [2]),
127
- ]).run();
128
- expect(result).toStrictEqual([
129
- outputMessage(greetResponse(`Hello timed-out`)),
130
- END_MESSAGE,
131
- ]);
132
- });
133
- });
134
- class AwakeableSleepRaceInterleavedWithSideEffectGreeter {
135
- async greet(ctx) {
136
- const awakeable = ctx.awakeable();
137
- const sleep = ctx.sleep(1);
138
- const combinatorPromise = CombineablePromise.race([
139
- awakeable.promise,
140
- sleep,
141
- ]);
142
- await ctx.run(() => Promise.resolve("sideEffect"));
143
- // Because the combinatorPromise generates the message when awaited, the entries order here should be:
144
- // * AwakeableEntry
145
- // * SleepEntry
146
- // * SideEffectEntry
147
- // * CombinatorOrderEntry
148
- const result = await combinatorPromise;
149
- if (typeof result === "string") {
150
- return TestResponse.create({
151
- greeting: `Hello ${result} for ${awakeable.id}`,
152
- });
153
- }
154
- return TestResponse.create({
155
- greeting: `Hello timed-out`,
156
- });
157
- }
158
- }
159
- describe("AwakeableSleepRaceInterleavedWithSideEffectGreeter", () => {
160
- it("generates the combinator entry after the side effect, when processing first time", async () => {
161
- const result = await new TestDriver(new AwakeableSleepRaceInterleavedWithSideEffectGreeter(), [
162
- startMessage(),
163
- inputMessage(greetRequest("Till")),
164
- completionMessage(1, JSON.stringify("Francesco")),
165
- ackMessage(3),
166
- ackMessage(4),
167
- ]).run();
168
- expect(result.length).toStrictEqual(6);
169
- expect(result[0]).toStrictEqual(awakeableMessage());
170
- expect(result[1].messageType).toStrictEqual(SLEEP_ENTRY_MESSAGE_TYPE);
171
- expect(result.slice(2)).toStrictEqual([
172
- sideEffectMessage("sideEffect"),
173
- combinatorEntryMessage(0, [1]),
174
- outputMessage(greetResponse(`Hello Francesco for ${getAwakeableId(1)}`)),
175
- END_MESSAGE,
176
- ]);
177
- });
178
- it("generates the combinator entry after the side effect, when replaying up to sleep", async () => {
179
- const result = await new TestDriver(new AwakeableSleepRaceInterleavedWithSideEffectGreeter(), [
180
- startMessage(),
181
- inputMessage(greetRequest("Till")),
182
- awakeableMessage("Francesco"),
183
- sleepMessage(1),
184
- ackMessage(3),
185
- ackMessage(4),
186
- ]).run();
187
- expect(result).toStrictEqual([
188
- sideEffectMessage("sideEffect"),
189
- combinatorEntryMessage(0, [1]),
190
- outputMessage(greetResponse(`Hello Francesco for ${getAwakeableId(1)}`)),
191
- END_MESSAGE,
192
- ]);
193
- });
194
- });
195
- class CombineablePromiseThenSideEffect {
196
- async greet(ctx) {
197
- const a1 = ctx.awakeable();
198
- const a2 = ctx.awakeable();
199
- const combinatorResult = await CombineablePromise.race([
200
- a1.promise,
201
- a2.promise,
202
- ]);
203
- const sideEffectResult = await ctx.run(() => Promise.resolve("sideEffect"));
204
- return TestResponse.create({
205
- greeting: combinatorResult + "-" + sideEffectResult,
206
- });
207
- }
208
- }
209
- describe("CombineablePromiseThenSideEffect", () => {
210
- it("after the combinator entry, suspends waiting for ack", async () => {
211
- const result = await new TestDriver(new CombineablePromiseThenSideEffect(), [
212
- startMessage(),
213
- inputMessage(greetRequest("Till")),
214
- awakeableMessage("Francesco"),
215
- awakeableMessage(),
216
- ]).run();
217
- expect(result).toStrictEqual([
218
- combinatorEntryMessage(0, [1]),
219
- suspensionMessage([2, 3]),
220
- ]);
221
- });
222
- it("after the combinator entry, suspends waiting only for the combinator ack", async () => {
223
- const result = await new TestDriver(new CombineablePromiseThenSideEffect(), [
224
- startMessage(),
225
- inputMessage(greetRequest("Till")),
226
- awakeableMessage("Francesco"),
227
- awakeableMessage("Till"),
228
- ]).run();
229
- expect(result.length).toStrictEqual(2);
230
- // We don't care if 1 or 2 was picked up.
231
- expect(result[0].messageType).toStrictEqual(COMBINATOR_ENTRY_MESSAGE);
232
- expect(result[1]).toStrictEqual(suspensionMessage([3]));
233
- });
234
- it("after the combinator entry and the ack, completes", async () => {
235
- const result = await new TestDriver(new CombineablePromiseThenSideEffect(), [
236
- startMessage(),
237
- inputMessage(greetRequest("Till")),
238
- awakeableMessage("Francesco"),
239
- awakeableMessage(),
240
- ackMessage(3),
241
- ackMessage(4),
242
- ]).run();
243
- expect(result).toStrictEqual([
244
- combinatorEntryMessage(0, [1]),
245
- sideEffectMessage("sideEffect"),
246
- outputMessage(greetResponse(`Francesco-sideEffect`)),
247
- END_MESSAGE,
248
- ]);
249
- });
250
- it("no need to wait for ack when replaing the combinator entry", async () => {
251
- const result = await new TestDriver(new CombineablePromiseThenSideEffect(), [
252
- startMessage(),
253
- inputMessage(greetRequest("Till")),
254
- awakeableMessage("Francesco"),
255
- awakeableMessage(),
256
- combinatorEntryMessage(0, [1]),
257
- ackMessage(4),
258
- ]).run();
259
- expect(result).toStrictEqual([
260
- sideEffectMessage("sideEffect"),
261
- outputMessage(greetResponse(`Francesco-sideEffect`)),
262
- END_MESSAGE,
263
- ]);
264
- });
265
- });
266
- class AwakeableOrTimeoutGreeter {
267
- async greet(ctx) {
268
- const { promise } = ctx.awakeable();
269
- try {
270
- const result = await promise.orTimeout(100);
271
- return TestResponse.create({
272
- greeting: `Hello ${result}`,
273
- });
274
- }
275
- catch (e) {
276
- if (e instanceof TimeoutError) {
277
- return TestResponse.create({
278
- greeting: `Hello timed-out`,
279
- });
280
- }
281
- }
282
- throw new Error("Unexpected result");
283
- }
284
- }
285
- describe("AwakeableOrTimeoutGreeter", () => {
286
- it("handles completion of awakeable", async () => {
287
- const result = await new TestDriver(new AwakeableOrTimeoutGreeter(), [
288
- startMessage(),
289
- inputMessage(greetRequest("Till")),
290
- completionMessage(1, JSON.stringify("Francesco")),
291
- ackMessage(3),
292
- ]).run();
293
- expect(result.length).toStrictEqual(5);
294
- expect(result[0]).toStrictEqual(awakeableMessage());
295
- expect(result[1].messageType).toStrictEqual(SLEEP_ENTRY_MESSAGE_TYPE);
296
- expect(result.slice(2)).toStrictEqual([
297
- combinatorEntryMessage(0, [1]),
298
- outputMessage(greetResponse(`Hello Francesco`)),
299
- END_MESSAGE,
300
- ]);
301
- });
302
- it("handles completion of sleep", async () => {
303
- const result = await new TestDriver(new AwakeableOrTimeoutGreeter(), [
304
- startMessage(),
305
- inputMessage(greetRequest("Till")),
306
- completionMessage(2, undefined, true),
307
- ackMessage(3),
308
- ]).run();
309
- expect(result.length).toStrictEqual(5);
310
- expect(result[0]).toStrictEqual(awakeableMessage());
311
- expect(result[1].messageType).toStrictEqual(SLEEP_ENTRY_MESSAGE_TYPE);
312
- expect(result.slice(2)).toStrictEqual([
313
- combinatorEntryMessage(0, [2]),
314
- outputMessage(greetResponse(`Hello timed-out`)),
315
- END_MESSAGE,
316
- ]);
317
- });
318
- });
319
- class InvokeRaceGreeter {
320
- async greet(ctx) {
321
- const jack = ctx.objectClient(GreeterApi, "Jack").greet({ name: "Jack" });
322
- const jill = ctx.objectClient(GreeterApi, "Jill").greet({ name: "Jill" });
323
- const result = await CombineablePromise.race([jack, jill]);
324
- return TestResponse.create({
325
- greeting: result.greeting,
326
- });
327
- }
328
- }
329
- describe("InvokeRaceGreeter", () => {
330
- const jackInvoke = invokeMessage("greeter", "greet", new TextEncoder().encode(JSON.stringify({ name: "Jack" })), undefined, undefined, "Jack");
331
- const jillInvoke = invokeMessage("greeter", "greet", new TextEncoder().encode(JSON.stringify({ name: "Jill" })), undefined, undefined, "Jill");
332
- it("should suspend without completions", async () => {
333
- const result = await new TestDriver(new InvokeRaceGreeter(), [
334
- startMessage(),
335
- inputMessage(greetRequest("Till")),
336
- ]).run();
337
- expect(result.length).toStrictEqual(3);
338
- expect(result[0]).toStrictEqual(jackInvoke);
339
- expect(result[1]).toStrictEqual(jillInvoke);
340
- expect(result[2]).toStrictEqual(suspensionMessage([1, 2]));
341
- });
342
- it("handles completion of first invoke", async () => {
343
- const result = await new TestDriver(new InvokeRaceGreeter(), [
344
- startMessage(),
345
- inputMessage(greetRequest("Till")),
346
- completionMessage(1, greetResponse("Hi Jack")),
347
- ackMessage(3),
348
- ]).run();
349
- expect(result.length).toStrictEqual(5);
350
- expect(result[0]).toStrictEqual(jackInvoke);
351
- expect(result[1]).toStrictEqual(jillInvoke);
352
- expect(result.slice(2)).toStrictEqual([
353
- combinatorEntryMessage(0, [1]),
354
- outputMessage(greetResponse("Hi Jack")),
355
- END_MESSAGE,
356
- ]);
357
- });
358
- it("handles completion of second invoke", async () => {
359
- const result = await new TestDriver(new InvokeRaceGreeter(), [
360
- startMessage(),
361
- inputMessage(greetRequest("Till")),
362
- completionMessage(2, greetResponse("Hi Jill")),
363
- ackMessage(3),
364
- ]).run();
365
- expect(result.length).toStrictEqual(5);
366
- expect(result[0]).toStrictEqual(jackInvoke);
367
- expect(result[1]).toStrictEqual(jillInvoke);
368
- expect(result.slice(2)).toStrictEqual([
369
- combinatorEntryMessage(0, [2]),
370
- outputMessage(greetResponse(`Hi Jill`)),
371
- END_MESSAGE,
372
- ]);
373
- });
374
- it("handles replay of the first invoke", async () => {
375
- const result = await new TestDriver(new InvokeRaceGreeter(), [
376
- startMessage(),
377
- inputMessage(greetRequest("Till")),
378
- invokeMessage("greeter", "greet", Buffer.from(JSON.stringify({ name: "Jack" })), greetResponse("Hi Jack"), undefined, "Jack"),
379
- ackMessage(3),
380
- ]).run();
381
- expect(result.length).toStrictEqual(4);
382
- expect(result[0]).toStrictEqual(jillInvoke);
383
- expect(result.slice(1)).toStrictEqual([
384
- combinatorEntryMessage(0, [1]),
385
- outputMessage(greetResponse("Hi Jack")),
386
- END_MESSAGE,
387
- ]);
388
- });
389
- it("handles replay of both invokes", async () => {
390
- const result = await new TestDriver(new InvokeRaceGreeter(), [
391
- startMessage(),
392
- inputMessage(greetRequest("Till")),
393
- invokeMessage("greeter", "greet", Buffer.from(JSON.stringify({ name: "Jack" })), greetResponse("Hi Jack"), undefined, "Jack"),
394
- invokeMessage("greeter", "greet", Buffer.from(JSON.stringify({ name: "Jill" })), greetResponse("Hi Jill"), undefined, "Jill"),
395
- ackMessage(3),
396
- ]).run();
397
- expect(result).toStrictEqual([
398
- // The first invoke will be chosen because Promise.race will pick the first promise, in case both are resolved
399
- combinatorEntryMessage(0, [1, 2]),
400
- outputMessage(greetResponse("Hi Jack")),
401
- END_MESSAGE,
402
- ]);
403
- });
404
- it("handles replay of the combinator with first invoke completed", async () => {
405
- const result = await new TestDriver(new InvokeRaceGreeter(), [
406
- startMessage(),
407
- inputMessage(greetRequest("Till")),
408
- invokeMessage("greeter", "greet", Buffer.from(JSON.stringify({ name: "Jack" })), greetResponse("Hi Jack"), undefined, "Jack"),
409
- jillInvoke,
410
- combinatorEntryMessage(0, [1]),
411
- ]).run();
412
- expect(result).toStrictEqual([
413
- outputMessage(greetResponse("Hi Jack")),
414
- END_MESSAGE,
415
- ]);
416
- });
417
- it("handles replay of the combinator with second invoke completed", async () => {
418
- const result = await new TestDriver(new InvokeRaceGreeter(), [
419
- startMessage(),
420
- inputMessage(greetRequest("Till")),
421
- jackInvoke,
422
- invokeMessage("greeter", "greet", Buffer.from(JSON.stringify({ name: "Jill" })), greetResponse("Hi Jill"), undefined, "Jill"),
423
- combinatorEntryMessage(0, [2]),
424
- ]).run();
425
- expect(result).toStrictEqual([
426
- outputMessage(greetResponse("Hi Jill")),
427
- END_MESSAGE,
428
- ]);
429
- });
430
- });
431
- //# sourceMappingURL=promise_combinators.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"promise_combinators.test.js","sourceRoot":"","sources":["../../../test/promise_combinators.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=promises.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"promises.test.d.ts","sourceRoot":"","sources":["../../../test/promises.test.ts"],"names":[],"mappings":""}