@restatedev/restate-sdk 1.0.1 → 1.1.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 (345) hide show
  1. package/README.md +3 -3
  2. package/dist/cjs/src/common_api.d.ts +4 -2
  3. package/dist/cjs/src/common_api.d.ts.map +1 -1
  4. package/dist/cjs/src/common_api.js.map +1 -1
  5. package/dist/cjs/src/connection/connection.d.ts +64 -0
  6. package/dist/cjs/src/connection/connection.d.ts.map +1 -1
  7. package/dist/cjs/src/connection/connection.js +168 -0
  8. package/dist/cjs/src/connection/connection.js.map +1 -1
  9. package/dist/cjs/src/context.d.ts +13 -9
  10. package/dist/cjs/src/context.d.ts.map +1 -1
  11. package/dist/cjs/src/context.js.map +1 -1
  12. package/dist/cjs/src/context_impl.d.ts.map +1 -1
  13. package/dist/cjs/src/context_impl.js +15 -20
  14. package/dist/cjs/src/context_impl.js.map +1 -1
  15. package/dist/cjs/src/endpoint/endpoint_builder.d.ts +10 -0
  16. package/dist/cjs/src/endpoint/endpoint_builder.d.ts.map +1 -1
  17. package/dist/cjs/src/endpoint/endpoint_builder.js +13 -0
  18. package/dist/cjs/src/endpoint/endpoint_builder.js.map +1 -1
  19. package/dist/cjs/src/endpoint/fetch_endpoint.d.ts +18 -1
  20. package/dist/cjs/src/endpoint/fetch_endpoint.d.ts.map +1 -1
  21. package/dist/cjs/src/endpoint/fetch_endpoint.js +16 -1
  22. package/dist/cjs/src/endpoint/fetch_endpoint.js.map +1 -1
  23. package/dist/cjs/src/endpoint/handlers/fetch.d.ts.map +1 -1
  24. package/dist/cjs/src/endpoint/handlers/fetch.js +1 -2
  25. package/dist/cjs/src/endpoint/handlers/fetch.js.map +1 -1
  26. package/dist/cjs/src/endpoint/handlers/generic.d.ts +10 -7
  27. package/dist/cjs/src/endpoint/handlers/generic.d.ts.map +1 -1
  28. package/dist/cjs/src/endpoint/handlers/generic.js +76 -54
  29. package/dist/cjs/src/endpoint/handlers/generic.js.map +1 -1
  30. package/dist/cjs/src/endpoint/handlers/lambda.d.ts.map +1 -1
  31. package/dist/cjs/src/endpoint/handlers/lambda.js +33 -16
  32. package/dist/cjs/src/endpoint/handlers/lambda.js.map +1 -1
  33. package/dist/cjs/src/endpoint/lambda_endpoint.d.ts +2 -0
  34. package/dist/cjs/src/endpoint/lambda_endpoint.d.ts.map +1 -1
  35. package/dist/cjs/src/endpoint/lambda_endpoint.js +6 -8
  36. package/dist/cjs/src/endpoint/lambda_endpoint.js.map +1 -1
  37. package/dist/cjs/src/endpoint/node_endpoint.d.ts +2 -0
  38. package/dist/cjs/src/endpoint/node_endpoint.d.ts.map +1 -1
  39. package/dist/cjs/src/endpoint/node_endpoint.js +31 -20
  40. package/dist/cjs/src/endpoint/node_endpoint.js.map +1 -1
  41. package/dist/cjs/src/endpoint.d.ts +25 -2
  42. package/dist/cjs/src/endpoint.d.ts.map +1 -1
  43. package/dist/cjs/src/fetch.d.ts +2 -1
  44. package/dist/cjs/src/fetch.d.ts.map +1 -1
  45. package/dist/cjs/src/fetch.js +4 -2
  46. package/dist/cjs/src/fetch.js.map +1 -1
  47. package/dist/cjs/src/generated/version.d.ts +1 -1
  48. package/dist/cjs/src/generated/version.js +1 -1
  49. package/dist/cjs/src/invocation.d.ts +1 -1
  50. package/dist/cjs/src/invocation.d.ts.map +1 -1
  51. package/dist/cjs/src/invocation.js.map +1 -1
  52. package/dist/cjs/src/io/decoder.d.ts +2 -2
  53. package/dist/cjs/src/io/decoder.d.ts.map +1 -1
  54. package/dist/cjs/src/io/decoder.js +7 -8
  55. package/dist/cjs/src/io/decoder.js.map +1 -1
  56. package/dist/cjs/src/io/encoder.d.ts +0 -3
  57. package/dist/cjs/src/io/encoder.d.ts.map +1 -1
  58. package/dist/cjs/src/io/encoder.js +1 -18
  59. package/dist/cjs/src/io/encoder.js.map +1 -1
  60. package/dist/cjs/src/logger.d.ts +21 -13
  61. package/dist/cjs/src/logger.d.ts.map +1 -1
  62. package/dist/cjs/src/logger.js +56 -56
  63. package/dist/cjs/src/logger.js.map +1 -1
  64. package/dist/cjs/src/state_machine.d.ts +3 -5
  65. package/dist/cjs/src/state_machine.d.ts.map +1 -1
  66. package/dist/cjs/src/state_machine.js +7 -15
  67. package/dist/cjs/src/state_machine.js.map +1 -1
  68. package/dist/cjs/src/types/rpc.d.ts +11 -11
  69. package/dist/cjs/src/types/rpc.d.ts.map +1 -1
  70. package/dist/cjs/src/types/rpc.js.map +1 -1
  71. package/dist/cjs/src/user_agent.d.ts +1 -1
  72. package/dist/cjs/src/utils/message_logger.d.ts +2 -2
  73. package/dist/cjs/src/utils/message_logger.d.ts.map +1 -1
  74. package/dist/cjs/src/utils/message_logger.js +3 -3
  75. package/dist/cjs/src/utils/message_logger.js.map +1 -1
  76. package/dist/cjs/src/utils/streams.d.ts +4 -0
  77. package/dist/cjs/src/utils/streams.d.ts.map +1 -0
  78. package/dist/cjs/src/utils/streams.js +24 -0
  79. package/dist/cjs/src/utils/streams.js.map +1 -0
  80. package/dist/cjs/test/awakeable.test.d.ts +2 -0
  81. package/dist/cjs/test/awakeable.test.d.ts.map +1 -0
  82. package/dist/cjs/test/awakeable.test.js +141 -0
  83. package/dist/cjs/test/awakeable.test.js.map +1 -0
  84. package/dist/cjs/test/complete_awakeable.test.d.ts +2 -0
  85. package/dist/cjs/test/complete_awakeable.test.d.ts.map +1 -0
  86. package/dist/cjs/test/complete_awakeable.test.js +123 -0
  87. package/dist/cjs/test/complete_awakeable.test.js.map +1 -0
  88. package/dist/cjs/test/eager_state.test.d.ts +2 -0
  89. package/dist/cjs/test/eager_state.test.d.ts.map +1 -0
  90. package/dist/cjs/test/eager_state.test.js +280 -0
  91. package/dist/cjs/test/eager_state.test.js.map +1 -0
  92. package/dist/cjs/test/get_and_set_state.test.d.ts +2 -0
  93. package/dist/cjs/test/get_and_set_state.test.d.ts.map +1 -0
  94. package/dist/cjs/test/get_and_set_state.test.js +233 -0
  95. package/dist/cjs/test/get_and_set_state.test.js.map +1 -0
  96. package/dist/cjs/test/get_state.test.d.ts +2 -0
  97. package/dist/cjs/test/get_state.test.d.ts.map +1 -0
  98. package/dist/cjs/test/get_state.test.js +333 -0
  99. package/dist/cjs/test/get_state.test.js.map +1 -0
  100. package/dist/cjs/test/lambda.test.d.ts +2 -0
  101. package/dist/cjs/test/lambda.test.d.ts.map +1 -0
  102. package/dist/cjs/test/lambda.test.js +246 -0
  103. package/dist/cjs/test/lambda.test.js.map +1 -0
  104. package/dist/cjs/test/message_coders.test.d.ts +2 -0
  105. package/dist/cjs/test/message_coders.test.d.ts.map +1 -0
  106. package/dist/cjs/test/message_coders.test.js +37 -0
  107. package/dist/cjs/test/message_coders.test.js.map +1 -0
  108. package/dist/cjs/test/promise_combinator_tracker.test.d.ts +2 -0
  109. package/dist/cjs/test/promise_combinator_tracker.test.d.ts.map +1 -0
  110. package/dist/cjs/test/promise_combinator_tracker.test.js +156 -0
  111. package/dist/cjs/test/promise_combinator_tracker.test.js.map +1 -0
  112. package/dist/cjs/test/promise_combinators.test.d.ts +2 -0
  113. package/dist/cjs/test/promise_combinators.test.d.ts.map +1 -0
  114. package/dist/cjs/test/promise_combinators.test.js +433 -0
  115. package/dist/cjs/test/promise_combinators.test.js.map +1 -0
  116. package/dist/cjs/test/promises.test.d.ts +2 -0
  117. package/dist/cjs/test/promises.test.d.ts.map +1 -0
  118. package/dist/cjs/test/promises.test.js +32 -0
  119. package/dist/cjs/test/promises.test.js.map +1 -0
  120. package/dist/cjs/test/protocol_stream.test.d.ts +2 -0
  121. package/dist/cjs/test/protocol_stream.test.d.ts.map +1 -0
  122. package/dist/cjs/test/protocol_stream.test.js +243 -0
  123. package/dist/cjs/test/protocol_stream.test.js.map +1 -0
  124. package/dist/cjs/test/protoutils.d.ts +44 -0
  125. package/dist/cjs/test/protoutils.d.ts.map +1 -0
  126. package/dist/cjs/test/protoutils.js +359 -0
  127. package/dist/cjs/test/protoutils.js.map +1 -0
  128. package/dist/cjs/test/service_bind.test.d.ts +2 -0
  129. package/dist/cjs/test/service_bind.test.d.ts.map +1 -0
  130. package/dist/cjs/test/service_bind.test.js +50 -0
  131. package/dist/cjs/test/service_bind.test.js.map +1 -0
  132. package/dist/cjs/test/side_effect.test.d.ts +2 -0
  133. package/dist/cjs/test/side_effect.test.d.ts.map +1 -0
  134. package/dist/cjs/test/side_effect.test.js +133 -0
  135. package/dist/cjs/test/side_effect.test.js.map +1 -0
  136. package/dist/cjs/test/sleep.test.d.ts +2 -0
  137. package/dist/cjs/test/sleep.test.d.ts.map +1 -0
  138. package/dist/cjs/test/sleep.test.js +224 -0
  139. package/dist/cjs/test/sleep.test.js.map +1 -0
  140. package/dist/cjs/test/state_keys.test.d.ts +2 -0
  141. package/dist/cjs/test/state_keys.test.d.ts.map +1 -0
  142. package/dist/cjs/test/state_keys.test.js +92 -0
  143. package/dist/cjs/test/state_keys.test.js.map +1 -0
  144. package/dist/cjs/test/state_machine.test.d.ts +2 -0
  145. package/dist/cjs/test/state_machine.test.d.ts.map +1 -0
  146. package/dist/cjs/test/state_machine.test.js +42 -0
  147. package/dist/cjs/test/state_machine.test.js.map +1 -0
  148. package/dist/cjs/test/testdriver.d.ts +31 -0
  149. package/dist/cjs/test/testdriver.d.ts.map +1 -0
  150. package/dist/cjs/test/testdriver.js +137 -0
  151. package/dist/cjs/test/testdriver.js.map +1 -0
  152. package/dist/cjs/test/utils.test.d.ts +2 -0
  153. package/dist/cjs/test/utils.test.d.ts.map +1 -0
  154. package/dist/cjs/test/utils.test.js +104 -0
  155. package/dist/cjs/test/utils.test.js.map +1 -0
  156. package/dist/cjs/tsconfig.tsbuildinfo +1 -1
  157. package/dist/esm/src/common_api.d.ts +4 -2
  158. package/dist/esm/src/common_api.d.ts.map +1 -1
  159. package/dist/esm/src/common_api.js +1 -1
  160. package/dist/esm/src/common_api.js.map +1 -1
  161. package/dist/esm/src/connection/connection.d.ts +64 -0
  162. package/dist/esm/src/connection/connection.d.ts.map +1 -1
  163. package/dist/esm/src/connection/connection.js +166 -1
  164. package/dist/esm/src/connection/connection.js.map +1 -1
  165. package/dist/esm/src/context.d.ts +13 -9
  166. package/dist/esm/src/context.d.ts.map +1 -1
  167. package/dist/esm/src/context.js.map +1 -1
  168. package/dist/esm/src/context_impl.d.ts.map +1 -1
  169. package/dist/esm/src/context_impl.js +15 -20
  170. package/dist/esm/src/context_impl.js.map +1 -1
  171. package/dist/esm/src/endpoint/endpoint_builder.d.ts +10 -0
  172. package/dist/esm/src/endpoint/endpoint_builder.d.ts.map +1 -1
  173. package/dist/esm/src/endpoint/endpoint_builder.js +13 -0
  174. package/dist/esm/src/endpoint/endpoint_builder.js.map +1 -1
  175. package/dist/esm/src/endpoint/fetch_endpoint.d.ts +18 -1
  176. package/dist/esm/src/endpoint/fetch_endpoint.d.ts.map +1 -1
  177. package/dist/esm/src/endpoint/fetch_endpoint.js +16 -1
  178. package/dist/esm/src/endpoint/fetch_endpoint.js.map +1 -1
  179. package/dist/esm/src/endpoint/handlers/fetch.d.ts.map +1 -1
  180. package/dist/esm/src/endpoint/handlers/fetch.js +1 -2
  181. package/dist/esm/src/endpoint/handlers/fetch.js.map +1 -1
  182. package/dist/esm/src/endpoint/handlers/generic.d.ts +10 -7
  183. package/dist/esm/src/endpoint/handlers/generic.d.ts.map +1 -1
  184. package/dist/esm/src/endpoint/handlers/generic.js +77 -55
  185. package/dist/esm/src/endpoint/handlers/generic.js.map +1 -1
  186. package/dist/esm/src/endpoint/handlers/lambda.d.ts.map +1 -1
  187. package/dist/esm/src/endpoint/handlers/lambda.js +33 -16
  188. package/dist/esm/src/endpoint/handlers/lambda.js.map +1 -1
  189. package/dist/esm/src/endpoint/lambda_endpoint.d.ts +2 -0
  190. package/dist/esm/src/endpoint/lambda_endpoint.d.ts.map +1 -1
  191. package/dist/esm/src/endpoint/lambda_endpoint.js +6 -8
  192. package/dist/esm/src/endpoint/lambda_endpoint.js.map +1 -1
  193. package/dist/esm/src/endpoint/node_endpoint.d.ts +2 -0
  194. package/dist/esm/src/endpoint/node_endpoint.d.ts.map +1 -1
  195. package/dist/esm/src/endpoint/node_endpoint.js +31 -20
  196. package/dist/esm/src/endpoint/node_endpoint.js.map +1 -1
  197. package/dist/esm/src/endpoint.d.ts +25 -2
  198. package/dist/esm/src/endpoint.d.ts.map +1 -1
  199. package/dist/esm/src/fetch.d.ts +2 -1
  200. package/dist/esm/src/fetch.d.ts.map +1 -1
  201. package/dist/esm/src/fetch.js +4 -2
  202. package/dist/esm/src/fetch.js.map +1 -1
  203. package/dist/esm/src/generated/version.d.ts +1 -1
  204. package/dist/esm/src/generated/version.js +1 -1
  205. package/dist/esm/src/invocation.d.ts +1 -1
  206. package/dist/esm/src/invocation.d.ts.map +1 -1
  207. package/dist/esm/src/invocation.js.map +1 -1
  208. package/dist/esm/src/io/decoder.d.ts +2 -2
  209. package/dist/esm/src/io/decoder.d.ts.map +1 -1
  210. package/dist/esm/src/io/decoder.js +7 -8
  211. package/dist/esm/src/io/decoder.js.map +1 -1
  212. package/dist/esm/src/io/encoder.d.ts +0 -3
  213. package/dist/esm/src/io/encoder.d.ts.map +1 -1
  214. package/dist/esm/src/io/encoder.js +0 -13
  215. package/dist/esm/src/io/encoder.js.map +1 -1
  216. package/dist/esm/src/logger.d.ts +21 -13
  217. package/dist/esm/src/logger.d.ts.map +1 -1
  218. package/dist/esm/src/logger.js +53 -55
  219. package/dist/esm/src/logger.js.map +1 -1
  220. package/dist/esm/src/state_machine.d.ts +3 -5
  221. package/dist/esm/src/state_machine.d.ts.map +1 -1
  222. package/dist/esm/src/state_machine.js +8 -16
  223. package/dist/esm/src/state_machine.js.map +1 -1
  224. package/dist/esm/src/types/rpc.d.ts +11 -11
  225. package/dist/esm/src/types/rpc.d.ts.map +1 -1
  226. package/dist/esm/src/types/rpc.js.map +1 -1
  227. package/dist/esm/src/user_agent.d.ts +1 -1
  228. package/dist/esm/src/utils/message_logger.d.ts +2 -2
  229. package/dist/esm/src/utils/message_logger.d.ts.map +1 -1
  230. package/dist/esm/src/utils/message_logger.js +4 -4
  231. package/dist/esm/src/utils/message_logger.js.map +1 -1
  232. package/dist/esm/src/utils/streams.d.ts +4 -0
  233. package/dist/esm/src/utils/streams.d.ts.map +1 -0
  234. package/dist/esm/src/utils/streams.js +20 -0
  235. package/dist/esm/src/utils/streams.js.map +1 -0
  236. package/dist/esm/test/awakeable.test.d.ts +2 -0
  237. package/dist/esm/test/awakeable.test.d.ts.map +1 -0
  238. package/dist/esm/test/awakeable.test.js +139 -0
  239. package/dist/esm/test/awakeable.test.js.map +1 -0
  240. package/dist/esm/test/complete_awakeable.test.d.ts +2 -0
  241. package/dist/esm/test/complete_awakeable.test.d.ts.map +1 -0
  242. package/dist/esm/test/complete_awakeable.test.js +121 -0
  243. package/dist/esm/test/complete_awakeable.test.js.map +1 -0
  244. package/dist/esm/test/eager_state.test.d.ts +2 -0
  245. package/dist/esm/test/eager_state.test.d.ts.map +1 -0
  246. package/dist/esm/test/eager_state.test.js +278 -0
  247. package/dist/esm/test/eager_state.test.js.map +1 -0
  248. package/dist/esm/test/get_and_set_state.test.d.ts +2 -0
  249. package/dist/esm/test/get_and_set_state.test.d.ts.map +1 -0
  250. package/dist/esm/test/get_and_set_state.test.js +231 -0
  251. package/dist/esm/test/get_and_set_state.test.js.map +1 -0
  252. package/dist/esm/test/get_state.test.d.ts +2 -0
  253. package/dist/esm/test/get_state.test.d.ts.map +1 -0
  254. package/dist/esm/test/get_state.test.js +331 -0
  255. package/dist/esm/test/get_state.test.js.map +1 -0
  256. package/dist/esm/test/lambda.test.d.ts +2 -0
  257. package/dist/esm/test/lambda.test.d.ts.map +1 -0
  258. package/dist/esm/test/lambda.test.js +221 -0
  259. package/dist/esm/test/lambda.test.js.map +1 -0
  260. package/dist/esm/test/message_coders.test.d.ts +2 -0
  261. package/dist/esm/test/message_coders.test.d.ts.map +1 -0
  262. package/dist/esm/test/message_coders.test.js +35 -0
  263. package/dist/esm/test/message_coders.test.js.map +1 -0
  264. package/dist/esm/test/promise_combinator_tracker.test.d.ts +2 -0
  265. package/dist/esm/test/promise_combinator_tracker.test.d.ts.map +1 -0
  266. package/dist/esm/test/promise_combinator_tracker.test.js +154 -0
  267. package/dist/esm/test/promise_combinator_tracker.test.js.map +1 -0
  268. package/dist/esm/test/promise_combinators.test.d.ts +2 -0
  269. package/dist/esm/test/promise_combinators.test.d.ts.map +1 -0
  270. package/dist/esm/test/promise_combinators.test.js +431 -0
  271. package/dist/esm/test/promise_combinators.test.js.map +1 -0
  272. package/dist/esm/test/promises.test.d.ts +2 -0
  273. package/dist/esm/test/promises.test.d.ts.map +1 -0
  274. package/dist/esm/test/promises.test.js +30 -0
  275. package/dist/esm/test/promises.test.js.map +1 -0
  276. package/dist/esm/test/protocol_stream.test.d.ts +2 -0
  277. package/dist/esm/test/protocol_stream.test.d.ts.map +1 -0
  278. package/dist/esm/test/protocol_stream.test.js +218 -0
  279. package/dist/esm/test/protocol_stream.test.js.map +1 -0
  280. package/dist/esm/test/protoutils.d.ts +44 -0
  281. package/dist/esm/test/protoutils.d.ts.map +1 -0
  282. package/dist/esm/test/protoutils.js +326 -0
  283. package/dist/esm/test/protoutils.js.map +1 -0
  284. package/dist/esm/test/service_bind.test.d.ts +2 -0
  285. package/dist/esm/test/service_bind.test.d.ts.map +1 -0
  286. package/dist/esm/test/service_bind.test.js +48 -0
  287. package/dist/esm/test/service_bind.test.js.map +1 -0
  288. package/dist/esm/test/side_effect.test.d.ts +2 -0
  289. package/dist/esm/test/side_effect.test.d.ts.map +1 -0
  290. package/dist/esm/test/side_effect.test.js +131 -0
  291. package/dist/esm/test/side_effect.test.js.map +1 -0
  292. package/dist/esm/test/sleep.test.d.ts +2 -0
  293. package/dist/esm/test/sleep.test.d.ts.map +1 -0
  294. package/dist/esm/test/sleep.test.js +222 -0
  295. package/dist/esm/test/sleep.test.js.map +1 -0
  296. package/dist/esm/test/state_keys.test.d.ts +2 -0
  297. package/dist/esm/test/state_keys.test.d.ts.map +1 -0
  298. package/dist/esm/test/state_keys.test.js +90 -0
  299. package/dist/esm/test/state_keys.test.js.map +1 -0
  300. package/dist/esm/test/state_machine.test.d.ts +2 -0
  301. package/dist/esm/test/state_machine.test.d.ts.map +1 -0
  302. package/dist/esm/test/state_machine.test.js +40 -0
  303. package/dist/esm/test/state_machine.test.js.map +1 -0
  304. package/dist/esm/test/testdriver.d.ts +31 -0
  305. package/dist/esm/test/testdriver.d.ts.map +1 -0
  306. package/dist/esm/test/testdriver.js +133 -0
  307. package/dist/esm/test/testdriver.js.map +1 -0
  308. package/dist/esm/test/utils.test.d.ts +2 -0
  309. package/dist/esm/test/utils.test.d.ts.map +1 -0
  310. package/dist/esm/test/utils.test.js +102 -0
  311. package/dist/esm/test/utils.test.js.map +1 -0
  312. package/dist/esm/tsconfig.tsbuildinfo +1 -1
  313. package/package.json +2 -2
  314. package/dist/cjs/src/connection/buffered_connection.d.ts +0 -14
  315. package/dist/cjs/src/connection/buffered_connection.d.ts.map +0 -1
  316. package/dist/cjs/src/connection/buffered_connection.js +0 -44
  317. package/dist/cjs/src/connection/buffered_connection.js.map +0 -1
  318. package/dist/cjs/src/connection/http_connection.d.ts +0 -77
  319. package/dist/cjs/src/connection/http_connection.d.ts.map +0 -1
  320. package/dist/cjs/src/connection/http_connection.js +0 -208
  321. package/dist/cjs/src/connection/http_connection.js.map +0 -1
  322. package/dist/cjs/src/connection/lambda_connection.d.ts +0 -17
  323. package/dist/cjs/src/connection/lambda_connection.d.ts.map +0 -1
  324. package/dist/cjs/src/connection/lambda_connection.js +0 -64
  325. package/dist/cjs/src/connection/lambda_connection.js.map +0 -1
  326. package/dist/cjs/src/endpoint/handlers/node.d.ts +0 -11
  327. package/dist/cjs/src/endpoint/handlers/node.d.ts.map +0 -1
  328. package/dist/cjs/src/endpoint/handlers/node.js +0 -188
  329. package/dist/cjs/src/endpoint/handlers/node.js.map +0 -1
  330. package/dist/esm/src/connection/buffered_connection.d.ts +0 -14
  331. package/dist/esm/src/connection/buffered_connection.d.ts.map +0 -1
  332. package/dist/esm/src/connection/buffered_connection.js +0 -40
  333. package/dist/esm/src/connection/buffered_connection.js.map +0 -1
  334. package/dist/esm/src/connection/http_connection.d.ts +0 -77
  335. package/dist/esm/src/connection/http_connection.d.ts.map +0 -1
  336. package/dist/esm/src/connection/http_connection.js +0 -204
  337. package/dist/esm/src/connection/http_connection.js.map +0 -1
  338. package/dist/esm/src/connection/lambda_connection.d.ts +0 -17
  339. package/dist/esm/src/connection/lambda_connection.d.ts.map +0 -1
  340. package/dist/esm/src/connection/lambda_connection.js +0 -60
  341. package/dist/esm/src/connection/lambda_connection.js.map +0 -1
  342. package/dist/esm/src/endpoint/handlers/node.d.ts +0 -11
  343. package/dist/esm/src/endpoint/handlers/node.d.ts.map +0 -1
  344. package/dist/esm/src/endpoint/handlers/node.js +0 -181
  345. package/dist/esm/src/endpoint/handlers/node.js.map +0 -1
@@ -0,0 +1,231 @@
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 { TestDriver, TestResponse } from "./testdriver.js";
12
+ import { checkJournalMismatchError, clearStateMessage, completionMessage, END_MESSAGE, getStateMessage, greetRequest, greetResponse, inputMessage, outputMessage, setStateMessage, startMessage, suspensionMessage, } from "./protoutils.js";
13
+ import { describe, expect, it } from "vitest";
14
+ class GetAndSetGreeter {
15
+ async greet(ctx, request) {
16
+ // state
17
+ const state = (await ctx.get("STATE")) || "nobody";
18
+ ctx.set("STATE", request.name);
19
+ return TestResponse.create({ greeting: `Hello ${state}` });
20
+ }
21
+ }
22
+ describe("GetAndSetGreeter", () => {
23
+ it("sends get and set state message to the runtime", async () => {
24
+ const result = await new TestDriver(new GetAndSetGreeter(), [
25
+ startMessage({ key: "Till" }),
26
+ inputMessage(greetRequest("Till")),
27
+ completionMessage(1, JSON.stringify("Pete")),
28
+ ]).run();
29
+ expect(result).toStrictEqual([
30
+ getStateMessage("STATE"),
31
+ setStateMessage("STATE", "Till"),
32
+ outputMessage(greetResponse("Hello Pete")),
33
+ END_MESSAGE,
34
+ ]);
35
+ });
36
+ it("send message to runtime for request-response mode", async () => {
37
+ const result = await new TestDriver(new GetAndSetGreeter(), [
38
+ startMessage(),
39
+ inputMessage(greetRequest("Till")),
40
+ ]).run();
41
+ expect(result).toStrictEqual([
42
+ getStateMessage("STATE"),
43
+ suspensionMessage([1]),
44
+ ]);
45
+ });
46
+ it("handles replay with value", async () => {
47
+ const result = await new TestDriver(new GetAndSetGreeter(), [
48
+ startMessage({ key: "Till" }),
49
+ inputMessage(greetRequest("Till")),
50
+ getStateMessage("STATE", "Francesco"),
51
+ setStateMessage("STATE", "Till"),
52
+ ]).run();
53
+ expect(result).toStrictEqual([
54
+ outputMessage(greetResponse("Hello Francesco")),
55
+ END_MESSAGE,
56
+ ]);
57
+ });
58
+ it("fails on journal mismatch. GetState completed with setState.", async () => {
59
+ const result = await new TestDriver(new GetAndSetGreeter(), [
60
+ startMessage(),
61
+ inputMessage(greetRequest("Till")),
62
+ setStateMessage("STATE", "Francesco"), // should have been getStateMessage
63
+ setStateMessage("STATE", "Till"),
64
+ ]).run();
65
+ expect(result.length).toStrictEqual(1);
66
+ checkJournalMismatchError(result[0]);
67
+ });
68
+ it("fails on journal mismatch. SetState completed with getState.", async () => {
69
+ const result = await new TestDriver(new GetAndSetGreeter(), [
70
+ startMessage(),
71
+ inputMessage(greetRequest("Till")),
72
+ getStateMessage("STATE", "Francesco"),
73
+ getStateMessage("STATE", "Till"), // should have been setStateMessage
74
+ ]).run();
75
+ expect(result.length).toStrictEqual(1);
76
+ checkJournalMismatchError(result[0]);
77
+ });
78
+ it("fails on journal mismatch. SetState completed with clearState.", async () => {
79
+ const result = await new TestDriver(new GetAndSetGreeter(), [
80
+ startMessage(),
81
+ inputMessage(greetRequest("Till")),
82
+ getStateMessage("STATE", "Francesco"),
83
+ clearStateMessage("STATE"), // should have been setStateMessage
84
+ ]).run();
85
+ expect(result.length).toStrictEqual(1);
86
+ checkJournalMismatchError(result[0]);
87
+ });
88
+ it("fails on journal mismatch. SetState completed with different key.", async () => {
89
+ const result = await new TestDriver(new GetAndSetGreeter(), [
90
+ startMessage(),
91
+ inputMessage(greetRequest("Till")),
92
+ getStateMessage("STATE", "Francesco"),
93
+ setStateMessage("STATEE", "Till"), // should have been STATE
94
+ ]).run();
95
+ expect(result.length).toStrictEqual(1);
96
+ checkJournalMismatchError(result[0]);
97
+ });
98
+ it("fails on journal mismatch. SetState completed with different value.", async () => {
99
+ const result = await new TestDriver(new GetAndSetGreeter(), [
100
+ startMessage(),
101
+ inputMessage(greetRequest("Till")),
102
+ getStateMessage("STATE", "Francesco"),
103
+ setStateMessage("STATE", "AnotherName"), // should have been Francesco
104
+ ]).run();
105
+ expect(result.length).toStrictEqual(1);
106
+ checkJournalMismatchError(result[0]);
107
+ });
108
+ it("fails on journal mismatch. GetState completed with different key.", async () => {
109
+ const result = await new TestDriver(new GetAndSetGreeter(), [
110
+ startMessage(),
111
+ inputMessage(greetRequest("Till")),
112
+ getStateMessage("STATEE"), // should have been STATE
113
+ ]).run();
114
+ expect(result.length).toStrictEqual(1);
115
+ checkJournalMismatchError(result[0]);
116
+ });
117
+ });
118
+ class ClearStateGreeter {
119
+ async greet(ctx, request) {
120
+ // state
121
+ const state = (await ctx.get("STATE")) || "nobody";
122
+ ctx.set("STATE", request.name);
123
+ ctx.clear("STATE");
124
+ return TestResponse.create({ greeting: `Hello ${state}` });
125
+ }
126
+ }
127
+ describe("ClearState", () => {
128
+ it("sends message to runtime", async () => {
129
+ const result = await new TestDriver(new ClearStateGreeter(), [
130
+ startMessage(),
131
+ inputMessage(greetRequest("Till")),
132
+ completionMessage(1, JSON.stringify("Francesco")),
133
+ ]).run();
134
+ expect(result).toStrictEqual([
135
+ getStateMessage("STATE"),
136
+ setStateMessage("STATE", "Till"),
137
+ clearStateMessage("STATE"),
138
+ outputMessage(greetResponse("Hello Francesco")),
139
+ END_MESSAGE,
140
+ ]);
141
+ });
142
+ it("handles replay", async () => {
143
+ const result = await new TestDriver(new ClearStateGreeter(), [
144
+ startMessage({}),
145
+ inputMessage(greetRequest("Till")),
146
+ getStateMessage("STATE", "Francesco"),
147
+ setStateMessage("STATE", "Till"),
148
+ clearStateMessage("STATE"),
149
+ ]).run();
150
+ expect(result).toStrictEqual([
151
+ outputMessage(greetResponse("Hello Francesco")),
152
+ END_MESSAGE,
153
+ ]);
154
+ });
155
+ it("fails on journal mismatch. ClearState completed with getState.", async () => {
156
+ const result = await new TestDriver(new ClearStateGreeter(), [
157
+ startMessage({}),
158
+ inputMessage(greetRequest("Till")),
159
+ getStateMessage("STATE", "Francesco"),
160
+ setStateMessage("STATE", "Till"),
161
+ getStateMessage("STATE"), // this should have been a clearStateMessage
162
+ ]).run();
163
+ expect(result.length).toStrictEqual(1);
164
+ checkJournalMismatchError(result[0]);
165
+ });
166
+ it("fails on journal mismatch. ClearState completed with setState.", async () => {
167
+ const result = await new TestDriver(new ClearStateGreeter(), [
168
+ startMessage({}),
169
+ inputMessage(greetRequest("Till")),
170
+ getStateMessage("STATE", "Francesco"),
171
+ setStateMessage("STATE", "Till"),
172
+ setStateMessage("STATE", "Till"), // this should have been a clearStateMessage
173
+ ]).run();
174
+ expect(result.length).toStrictEqual(1);
175
+ checkJournalMismatchError(result[0]);
176
+ });
177
+ it("fails on journal mismatch. ClearState completed with different key.", async () => {
178
+ const result = await new TestDriver(new ClearStateGreeter(), [
179
+ startMessage({}),
180
+ inputMessage(greetRequest("Till")),
181
+ getStateMessage("STATE", "Francesco"),
182
+ setStateMessage("STATE", "Till"),
183
+ clearStateMessage("STATEE"), // this should have been STATE
184
+ ]).run();
185
+ expect(result.length).toStrictEqual(1);
186
+ checkJournalMismatchError(result[0]);
187
+ });
188
+ });
189
+ var OrderStatus;
190
+ (function (OrderStatus) {
191
+ OrderStatus[OrderStatus["ORDERED"] = 0] = "ORDERED";
192
+ OrderStatus[OrderStatus["DELIVERED"] = 1] = "DELIVERED";
193
+ })(OrderStatus || (OrderStatus = {}));
194
+ class GetAndSetEnumGreeter {
195
+ async greet(ctx) {
196
+ // state
197
+ const oldState = await ctx.get("STATE");
198
+ ctx.set("STATE", OrderStatus.ORDERED);
199
+ const newState = await ctx.get("STATE");
200
+ return TestResponse.create({ greeting: `Hello ${oldState} - ${newState}` });
201
+ }
202
+ }
203
+ describe("GetAndSetEnumGreeter", () => {
204
+ it("handles replays with value.", async () => {
205
+ const result = await new TestDriver(new GetAndSetEnumGreeter(), [
206
+ startMessage({}),
207
+ inputMessage(greetRequest("Till")),
208
+ getStateMessage("STATE", OrderStatus.DELIVERED),
209
+ setStateMessage("STATE", OrderStatus.ORDERED),
210
+ getStateMessage("STATE", OrderStatus.ORDERED),
211
+ ]).run();
212
+ expect(result).toStrictEqual([
213
+ outputMessage(greetResponse("Hello 1 - 0")),
214
+ END_MESSAGE,
215
+ ]);
216
+ });
217
+ it("handles replays with value. First empty state, then enum state.", async () => {
218
+ const result = await new TestDriver(new GetAndSetEnumGreeter(), [
219
+ startMessage({}),
220
+ inputMessage(greetRequest("Till")),
221
+ getStateMessage("STATE", undefined, true),
222
+ setStateMessage("STATE", OrderStatus.ORDERED),
223
+ getStateMessage("STATE", OrderStatus.ORDERED),
224
+ ]).run();
225
+ expect(result).toStrictEqual([
226
+ outputMessage(greetResponse("Hello null - 0")),
227
+ END_MESSAGE,
228
+ ]);
229
+ });
230
+ });
231
+ //# sourceMappingURL=get_and_set_state.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get_and_set_state.test.js","sourceRoot":"","sources":["../../../test/get_and_set_state.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=get_state.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get_state.test.d.ts","sourceRoot":"","sources":["../../../test/get_state.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,331 @@
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 { checkJournalMismatchError, checkTerminalError, completionMessage, END_MESSAGE, failure, getStateMessage, greetRequest, greetResponse, inputMessage, outputMessage, setStateMessage, startMessage, suspensionMessage, } from "./protoutils.js";
12
+ import { TestDriver, TestResponse } from "./testdriver.js";
13
+ import { describe, expect, it } from "vitest";
14
+ class GetStringStateGreeter {
15
+ async greet(ctx) {
16
+ // state
17
+ let state = await ctx.get("STATE");
18
+ if (state === null) {
19
+ state = "nobody";
20
+ }
21
+ return TestResponse.create({ greeting: `Hello ${state}` });
22
+ }
23
+ }
24
+ describe("GetStringStateGreeter", () => {
25
+ it("sends message to runtime", async () => {
26
+ const result = await new TestDriver(new GetStringStateGreeter(), [
27
+ startMessage({}),
28
+ inputMessage(greetRequest("Till")),
29
+ ]).run();
30
+ expect(result).toStrictEqual([
31
+ getStateMessage("STATE"),
32
+ suspensionMessage([1]),
33
+ ]);
34
+ });
35
+ it("sends message to runtime for request-response mode", async () => {
36
+ const result = await new TestDriver(new GetStringStateGreeter(), [
37
+ startMessage({ knownEntries: 1 }),
38
+ inputMessage(greetRequest("Till")),
39
+ ]).run();
40
+ expect(result).toStrictEqual([
41
+ getStateMessage("STATE"),
42
+ suspensionMessage([1]),
43
+ ]);
44
+ });
45
+ it("handles completion with value", async () => {
46
+ const result = await new TestDriver(new GetStringStateGreeter(), [
47
+ startMessage({}),
48
+ inputMessage(greetRequest("Till")),
49
+ completionMessage(1, JSON.stringify("Francesco")),
50
+ ]).run();
51
+ expect(result[0]).toStrictEqual(getStateMessage("STATE"));
52
+ expect(result[1]).toStrictEqual(outputMessage(greetResponse("Hello Francesco")));
53
+ expect(result[2]).toStrictEqual(END_MESSAGE);
54
+ // expect(result).toBe([
55
+ // getStateMessage("STATE"),
56
+ // outputMessage(greetResponse("Hello Francesco")),
57
+ // END_MESSAGE,
58
+ // ]);
59
+ });
60
+ it("handles completion with empty", async () => {
61
+ const result = await new TestDriver(new GetStringStateGreeter(), [
62
+ startMessage({}),
63
+ inputMessage(greetRequest("Till")),
64
+ completionMessage(1, undefined, true),
65
+ ]).run();
66
+ expect(result).toStrictEqual([
67
+ getStateMessage("STATE"),
68
+ outputMessage(greetResponse("Hello nobody")),
69
+ END_MESSAGE,
70
+ ]);
71
+ });
72
+ it("handles completion with empty string", async () => {
73
+ const result = await new TestDriver(new GetStringStateGreeter(), [
74
+ startMessage({}),
75
+ inputMessage(greetRequest("Till")),
76
+ completionMessage(1, Buffer.from(JSON.stringify(""))),
77
+ ]).run();
78
+ expect(result).toStrictEqual([
79
+ getStateMessage("STATE"),
80
+ outputMessage(greetResponse("Hello ")),
81
+ END_MESSAGE,
82
+ ]);
83
+ });
84
+ it("handles completion with failure", async () => {
85
+ const result = await new TestDriver(new GetStringStateGreeter(), [
86
+ startMessage({}),
87
+ inputMessage(greetRequest("Till")),
88
+ completionMessage(1, undefined, undefined, failure("Canceled")),
89
+ ]).run();
90
+ expect(result.length).toStrictEqual(3);
91
+ expect(result[0]).toStrictEqual(getStateMessage("STATE"));
92
+ checkTerminalError(result[1], "Canceled");
93
+ expect(result[2]).toStrictEqual(END_MESSAGE);
94
+ });
95
+ it("handles replay with value", async () => {
96
+ const result = await new TestDriver(new GetStringStateGreeter(), [
97
+ startMessage({}),
98
+ inputMessage(greetRequest("Till")),
99
+ getStateMessage("STATE", "Francesco"),
100
+ ]).run();
101
+ expect(result).toStrictEqual([
102
+ outputMessage(greetResponse("Hello Francesco")),
103
+ END_MESSAGE,
104
+ ]);
105
+ });
106
+ it("handles replay with empty", async () => {
107
+ const result = await new TestDriver(new GetStringStateGreeter(), [
108
+ startMessage({}),
109
+ inputMessage(greetRequest("Till")),
110
+ getStateMessage("STATE", undefined, true),
111
+ ]).run();
112
+ expect(result).toStrictEqual([
113
+ outputMessage(greetResponse("Hello nobody")),
114
+ END_MESSAGE,
115
+ ]);
116
+ });
117
+ it("handles replay with failure", async () => {
118
+ const result = await new TestDriver(new GetStringStateGreeter(), [
119
+ startMessage({}),
120
+ inputMessage(greetRequest("Till")),
121
+ getStateMessage("STATE", undefined, undefined, failure("Canceled")),
122
+ ]).run();
123
+ expect(result.length).toStrictEqual(2);
124
+ checkTerminalError(result[0], "Canceled");
125
+ expect(result[1]).toStrictEqual(END_MESSAGE);
126
+ });
127
+ });
128
+ class GetNumberStateGreeter {
129
+ async greet(ctx) {
130
+ // state
131
+ const state = await ctx.get("STATE");
132
+ return TestResponse.create({ greeting: `Hello ${state}` });
133
+ }
134
+ }
135
+ describe("GetNumberStateGreeter", () => {
136
+ it("sends message to the runtime", async () => {
137
+ const result = await new TestDriver(new GetNumberStateGreeter(), [
138
+ startMessage({}),
139
+ inputMessage(greetRequest("Till")),
140
+ ]).run();
141
+ expect(result).toStrictEqual([
142
+ getStateMessage("STATE"),
143
+ suspensionMessage([1]),
144
+ ]);
145
+ });
146
+ it("handles completion with value", async () => {
147
+ const result = await new TestDriver(new GetNumberStateGreeter(), [
148
+ startMessage({}),
149
+ inputMessage(greetRequest("Till")),
150
+ completionMessage(1, Buffer.from(JSON.stringify(70))),
151
+ ]).run();
152
+ expect(result).toStrictEqual([
153
+ getStateMessage("STATE"),
154
+ outputMessage(greetResponse("Hello 70")),
155
+ END_MESSAGE,
156
+ ]);
157
+ });
158
+ it("handles completion with value 0", async () => {
159
+ const result = await new TestDriver(new GetNumberStateGreeter(), [
160
+ startMessage({}),
161
+ inputMessage(greetRequest("Till")),
162
+ completionMessage(1, Buffer.from(JSON.stringify(0))),
163
+ ]).run();
164
+ expect(result).toStrictEqual([
165
+ getStateMessage("STATE"),
166
+ outputMessage(greetResponse("Hello 0")),
167
+ END_MESSAGE,
168
+ ]);
169
+ });
170
+ it("handles completion with empty", async () => {
171
+ const result = await new TestDriver(new GetNumberStateGreeter(), [
172
+ startMessage({}),
173
+ inputMessage(greetRequest("Till")),
174
+ completionMessage(1, undefined, true),
175
+ ]).run();
176
+ expect(result).toStrictEqual([
177
+ getStateMessage("STATE"),
178
+ outputMessage(greetResponse("Hello null")),
179
+ END_MESSAGE,
180
+ ]);
181
+ });
182
+ it("handles replay with value", async () => {
183
+ const result = await new TestDriver(new GetNumberStateGreeter(), [
184
+ startMessage({}),
185
+ inputMessage(greetRequest("Till")),
186
+ getStateMessage("STATE", 70),
187
+ ]).run();
188
+ expect(result).toStrictEqual([
189
+ outputMessage(greetResponse("Hello 70")),
190
+ END_MESSAGE,
191
+ ]);
192
+ });
193
+ it("handles replay with value 0", async () => {
194
+ const result = await new TestDriver(new GetNumberStateGreeter(), [
195
+ startMessage({}),
196
+ inputMessage(greetRequest("Till")),
197
+ getStateMessage("STATE", 0),
198
+ ]).run();
199
+ expect(result).toStrictEqual([
200
+ outputMessage(greetResponse("Hello 0")),
201
+ END_MESSAGE,
202
+ ]);
203
+ });
204
+ it("handles replay with empty", async () => {
205
+ const result = await new TestDriver(new GetNumberStateGreeter(), [
206
+ startMessage({}),
207
+ inputMessage(greetRequest("Till")),
208
+ getStateMessage("STATE", undefined, true),
209
+ ]).run();
210
+ expect(result).toStrictEqual([
211
+ outputMessage(greetResponse("Hello null")),
212
+ END_MESSAGE,
213
+ ]);
214
+ });
215
+ it("fails on journal mismatch. Completed with SetStateMessage.", async () => {
216
+ const result = await new TestDriver(new GetNumberStateGreeter(), [
217
+ startMessage({}),
218
+ inputMessage(greetRequest("Till")),
219
+ setStateMessage("STATE", 0),
220
+ ]).run();
221
+ expect(result.length).toStrictEqual(1);
222
+ checkJournalMismatchError(result[0]);
223
+ });
224
+ });
225
+ class GetNumberListStateGreeter {
226
+ async greet(ctx) {
227
+ // state
228
+ const state = await ctx.get("STATE");
229
+ if (state) {
230
+ return TestResponse.create({
231
+ greeting: `Hello index 0: ${state[0]} - index 1: ${state[1]}`,
232
+ });
233
+ }
234
+ else {
235
+ return TestResponse.create({ greeting: `Hello no state found` });
236
+ }
237
+ }
238
+ }
239
+ describe("GetNumberListStateGreeter", () => {
240
+ it("sends message to runtime", async () => {
241
+ const result = await new TestDriver(new GetNumberListStateGreeter(), [
242
+ startMessage({}),
243
+ inputMessage(greetRequest("Till")),
244
+ ]).run();
245
+ expect(result).toStrictEqual([
246
+ getStateMessage("STATE"),
247
+ suspensionMessage([1]),
248
+ ]);
249
+ });
250
+ it("handles completion with value", async () => {
251
+ const result = await new TestDriver(new GetNumberListStateGreeter(), [
252
+ startMessage({}),
253
+ inputMessage(greetRequest("Till")),
254
+ completionMessage(1, Buffer.from(JSON.stringify([5, 4]))),
255
+ ]).run();
256
+ expect(result).toStrictEqual([
257
+ getStateMessage("STATE"),
258
+ outputMessage(greetResponse("Hello index 0: 5 - index 1: 4")),
259
+ END_MESSAGE,
260
+ ]);
261
+ });
262
+ it("handles completion with value empty list", async () => {
263
+ const result = await new TestDriver(new GetNumberListStateGreeter(), [
264
+ startMessage({}),
265
+ inputMessage(greetRequest("Till")),
266
+ completionMessage(1, Buffer.from(JSON.stringify([]))),
267
+ ]).run();
268
+ // For an empty list it will print undefined values for the first two indices
269
+ // but still recognize it as a list
270
+ expect(result).toStrictEqual([
271
+ getStateMessage("STATE"),
272
+ outputMessage(greetResponse("Hello index 0: undefined - index 1: undefined")),
273
+ END_MESSAGE,
274
+ ]);
275
+ });
276
+ it("handles completion with empty", async () => {
277
+ const result = await new TestDriver(new GetNumberListStateGreeter(), [
278
+ startMessage({}),
279
+ inputMessage(greetRequest("Till")),
280
+ completionMessage(1, undefined, true),
281
+ ]).run();
282
+ expect(result).toStrictEqual([
283
+ getStateMessage("STATE"),
284
+ outputMessage(greetResponse("Hello no state found")),
285
+ END_MESSAGE,
286
+ ]);
287
+ });
288
+ it("handles replay with value", async () => {
289
+ const result = await new TestDriver(new GetNumberListStateGreeter(), [
290
+ startMessage({}),
291
+ inputMessage(greetRequest("Till")),
292
+ getStateMessage("STATE", [5, 4]),
293
+ ]).run();
294
+ expect(result).toStrictEqual([
295
+ outputMessage(greetResponse("Hello index 0: 5 - index 1: 4")),
296
+ END_MESSAGE,
297
+ ]);
298
+ });
299
+ it("handles replay with value empty list", async () => {
300
+ const result = await new TestDriver(new GetNumberListStateGreeter(), [
301
+ startMessage(),
302
+ inputMessage(greetRequest("Till")),
303
+ getStateMessage("STATE", []),
304
+ ]).run();
305
+ expect(result).toStrictEqual([
306
+ outputMessage(greetResponse("Hello index 0: undefined - index 1: undefined")),
307
+ END_MESSAGE,
308
+ ]);
309
+ });
310
+ it("handles replay with value empty list", async () => {
311
+ const result = await new TestDriver(new GetNumberListStateGreeter(), [
312
+ startMessage(),
313
+ inputMessage(greetRequest("Till")),
314
+ getStateMessage("STATE", undefined, true),
315
+ ]).run();
316
+ expect(result).toStrictEqual([
317
+ outputMessage(greetResponse("Hello no state found")),
318
+ END_MESSAGE,
319
+ ]);
320
+ });
321
+ it("fails on journal mismatch. Completed with wrong state key", async () => {
322
+ const result = await new TestDriver(new GetNumberListStateGreeter(), [
323
+ startMessage(),
324
+ inputMessage(greetRequest("Till")),
325
+ getStateMessage("STATEE", undefined, true),
326
+ ]).run();
327
+ expect(result.length).toStrictEqual(1);
328
+ checkJournalMismatchError(result[0]);
329
+ });
330
+ });
331
+ //# sourceMappingURL=get_state.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get_state.test.js","sourceRoot":"","sources":["../../../test/get_state.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=lambda.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lambda.test.d.ts","sourceRoot":"","sources":["../../../test/lambda.test.ts"],"names":[],"mappings":""}