@restatedev/restate-sdk 1.3.3 → 1.5.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 (505) hide show
  1. package/README.md +6 -4
  2. package/dist/cjs/src/common_api.d.ts +5 -5
  3. package/dist/cjs/src/common_api.d.ts.map +1 -1
  4. package/dist/cjs/src/common_api.js +2 -1
  5. package/dist/cjs/src/common_api.js.map +1 -1
  6. package/dist/cjs/src/context.d.ts +103 -12
  7. package/dist/cjs/src/context.d.ts.map +1 -1
  8. package/dist/cjs/src/context.js +25 -13
  9. package/dist/cjs/src/context.js.map +1 -1
  10. package/dist/cjs/src/context_impl.d.ts +38 -24
  11. package/dist/cjs/src/context_impl.d.ts.map +1 -1
  12. package/dist/cjs/src/context_impl.js +327 -342
  13. package/dist/cjs/src/context_impl.js.map +1 -1
  14. package/dist/cjs/src/endpoint/endpoint_builder.d.ts +6 -8
  15. package/dist/cjs/src/endpoint/endpoint_builder.d.ts.map +1 -1
  16. package/dist/cjs/src/endpoint/endpoint_builder.js +23 -23
  17. package/dist/cjs/src/endpoint/endpoint_builder.js.map +1 -1
  18. package/dist/cjs/src/endpoint/fetch_endpoint.d.ts +4 -6
  19. package/dist/cjs/src/endpoint/fetch_endpoint.d.ts.map +1 -1
  20. package/dist/cjs/src/endpoint/fetch_endpoint.js +0 -4
  21. package/dist/cjs/src/endpoint/fetch_endpoint.js.map +1 -1
  22. package/dist/cjs/src/endpoint/handlers/fetch.d.ts.map +1 -1
  23. package/dist/cjs/src/endpoint/handlers/fetch.js +1 -0
  24. package/dist/cjs/src/endpoint/handlers/fetch.js.map +1 -1
  25. package/dist/cjs/src/endpoint/handlers/generic.d.ts +9 -0
  26. package/dist/cjs/src/endpoint/handlers/generic.d.ts.map +1 -1
  27. package/dist/cjs/src/endpoint/handlers/generic.js +249 -88
  28. package/dist/cjs/src/endpoint/handlers/generic.js.map +1 -1
  29. package/dist/cjs/src/endpoint/handlers/lambda.d.ts.map +1 -1
  30. package/dist/cjs/src/endpoint/handlers/lambda.js +15 -3
  31. package/dist/cjs/src/endpoint/handlers/lambda.js.map +1 -1
  32. package/dist/cjs/src/endpoint/handlers/vm/sdk_shared_core_wasm_bindings.d.ts +283 -0
  33. package/dist/cjs/src/endpoint/handlers/vm/sdk_shared_core_wasm_bindings.d.ts.map +1 -0
  34. package/dist/cjs/src/endpoint/handlers/vm/sdk_shared_core_wasm_bindings.js +1333 -0
  35. package/dist/cjs/src/endpoint/handlers/vm/sdk_shared_core_wasm_bindings.js.map +1 -0
  36. package/dist/cjs/src/endpoint/lambda_endpoint.d.ts +4 -6
  37. package/dist/cjs/src/endpoint/lambda_endpoint.d.ts.map +1 -1
  38. package/dist/cjs/src/endpoint/lambda_endpoint.js +0 -4
  39. package/dist/cjs/src/endpoint/lambda_endpoint.js.map +1 -1
  40. package/dist/cjs/src/endpoint/node_endpoint.d.ts +4 -6
  41. package/dist/cjs/src/endpoint/node_endpoint.d.ts.map +1 -1
  42. package/dist/cjs/src/endpoint/node_endpoint.js +12 -4
  43. package/dist/cjs/src/endpoint/node_endpoint.js.map +1 -1
  44. package/dist/cjs/src/endpoint.d.ts +6 -37
  45. package/dist/cjs/src/endpoint.d.ts.map +1 -1
  46. package/dist/cjs/src/generated/version.d.ts +1 -1
  47. package/dist/cjs/src/generated/version.js +1 -1
  48. package/dist/cjs/src/io.d.ts +25 -0
  49. package/dist/cjs/src/io.d.ts.map +1 -0
  50. package/dist/cjs/src/io.js +78 -0
  51. package/dist/cjs/src/io.js.map +1 -0
  52. package/dist/cjs/src/logging/console_logger_transport.d.ts +5 -0
  53. package/dist/cjs/src/logging/console_logger_transport.d.ts.map +1 -0
  54. package/dist/cjs/src/logging/console_logger_transport.js +98 -0
  55. package/dist/cjs/src/logging/console_logger_transport.js.map +1 -0
  56. package/dist/cjs/src/logging/logger.d.ts +11 -0
  57. package/dist/cjs/src/logging/logger.d.ts.map +1 -0
  58. package/dist/cjs/src/logging/logger.js +61 -0
  59. package/dist/cjs/src/logging/logger.js.map +1 -0
  60. package/dist/cjs/src/logging/logger_transport.d.ts +52 -0
  61. package/dist/cjs/src/logging/logger_transport.d.ts.map +1 -0
  62. package/dist/cjs/src/logging/logger_transport.js +59 -0
  63. package/dist/cjs/src/logging/logger_transport.js.map +1 -0
  64. package/dist/cjs/src/promises.d.ts +110 -0
  65. package/dist/cjs/src/promises.d.ts.map +1 -0
  66. package/dist/cjs/src/promises.js +323 -0
  67. package/dist/cjs/src/promises.js.map +1 -0
  68. package/dist/cjs/src/types/components.d.ts +11 -3
  69. package/dist/cjs/src/types/components.d.ts.map +1 -1
  70. package/dist/cjs/src/types/components.js +38 -5
  71. package/dist/cjs/src/types/components.js.map +1 -1
  72. package/dist/cjs/src/types/discovery.d.ts +4 -0
  73. package/dist/cjs/src/types/discovery.d.ts.map +1 -1
  74. package/dist/cjs/src/types/errors.d.ts +8 -31
  75. package/dist/cjs/src/types/errors.d.ts.map +1 -1
  76. package/dist/cjs/src/types/errors.js +18 -74
  77. package/dist/cjs/src/types/errors.js.map +1 -1
  78. package/dist/cjs/src/types/rpc.d.ts +66 -41
  79. package/dist/cjs/src/types/rpc.d.ts.map +1 -1
  80. package/dist/cjs/src/types/rpc.js +32 -83
  81. package/dist/cjs/src/types/rpc.js.map +1 -1
  82. package/dist/cjs/src/user_agent.d.ts +1 -1
  83. package/dist/cjs/src/utils/buffer.d.ts +1 -0
  84. package/dist/cjs/src/utils/buffer.d.ts.map +1 -1
  85. package/dist/cjs/src/utils/completable_promise.d.ts +9 -0
  86. package/dist/cjs/src/utils/completable_promise.d.ts.map +1 -0
  87. package/dist/cjs/src/utils/completable_promise.js +34 -0
  88. package/dist/cjs/src/utils/completable_promise.js.map +1 -0
  89. package/dist/cjs/src/utils/rand.d.ts +1 -1
  90. package/dist/cjs/src/utils/rand.d.ts.map +1 -1
  91. package/dist/cjs/src/utils/rand.js +1 -1
  92. package/dist/cjs/src/utils/rand.js.map +1 -1
  93. package/dist/cjs/tsconfig.tsbuildinfo +1 -1
  94. package/dist/esm/src/common_api.d.ts +5 -5
  95. package/dist/esm/src/common_api.d.ts.map +1 -1
  96. package/dist/esm/src/common_api.js +1 -1
  97. package/dist/esm/src/common_api.js.map +1 -1
  98. package/dist/esm/src/context.d.ts +103 -12
  99. package/dist/esm/src/context.d.ts.map +1 -1
  100. package/dist/esm/src/context.js +24 -12
  101. package/dist/esm/src/context.js.map +1 -1
  102. package/dist/esm/src/context_impl.d.ts +38 -24
  103. package/dist/esm/src/context_impl.d.ts.map +1 -1
  104. package/dist/esm/src/context_impl.js +325 -341
  105. package/dist/esm/src/context_impl.js.map +1 -1
  106. package/dist/esm/src/endpoint/endpoint_builder.d.ts +6 -8
  107. package/dist/esm/src/endpoint/endpoint_builder.d.ts.map +1 -1
  108. package/dist/esm/src/endpoint/endpoint_builder.js +23 -23
  109. package/dist/esm/src/endpoint/endpoint_builder.js.map +1 -1
  110. package/dist/esm/src/endpoint/fetch_endpoint.d.ts +4 -6
  111. package/dist/esm/src/endpoint/fetch_endpoint.d.ts.map +1 -1
  112. package/dist/esm/src/endpoint/fetch_endpoint.js +0 -4
  113. package/dist/esm/src/endpoint/fetch_endpoint.js.map +1 -1
  114. package/dist/esm/src/endpoint/handlers/fetch.d.ts.map +1 -1
  115. package/dist/esm/src/endpoint/handlers/fetch.js +1 -0
  116. package/dist/esm/src/endpoint/handlers/fetch.js.map +1 -1
  117. package/dist/esm/src/endpoint/handlers/generic.d.ts +9 -0
  118. package/dist/esm/src/endpoint/handlers/generic.d.ts.map +1 -1
  119. package/dist/esm/src/endpoint/handlers/generic.js +226 -89
  120. package/dist/esm/src/endpoint/handlers/generic.js.map +1 -1
  121. package/dist/esm/src/endpoint/handlers/lambda.d.ts.map +1 -1
  122. package/dist/esm/src/endpoint/handlers/lambda.js +15 -3
  123. package/dist/esm/src/endpoint/handlers/lambda.js.map +1 -1
  124. package/dist/esm/src/endpoint/handlers/vm/sdk_shared_core_wasm_bindings.d.ts +283 -0
  125. package/dist/esm/src/endpoint/handlers/vm/sdk_shared_core_wasm_bindings.d.ts.map +1 -0
  126. package/dist/esm/src/endpoint/handlers/vm/sdk_shared_core_wasm_bindings.js +1322 -0
  127. package/dist/esm/src/endpoint/handlers/vm/sdk_shared_core_wasm_bindings.js.map +1 -0
  128. package/dist/esm/src/endpoint/lambda_endpoint.d.ts +4 -6
  129. package/dist/esm/src/endpoint/lambda_endpoint.d.ts.map +1 -1
  130. package/dist/esm/src/endpoint/lambda_endpoint.js +0 -4
  131. package/dist/esm/src/endpoint/lambda_endpoint.js.map +1 -1
  132. package/dist/esm/src/endpoint/node_endpoint.d.ts +4 -6
  133. package/dist/esm/src/endpoint/node_endpoint.d.ts.map +1 -1
  134. package/dist/esm/src/endpoint/node_endpoint.js +12 -4
  135. package/dist/esm/src/endpoint/node_endpoint.js.map +1 -1
  136. package/dist/esm/src/endpoint.d.ts +6 -37
  137. package/dist/esm/src/endpoint.d.ts.map +1 -1
  138. package/dist/esm/src/generated/version.d.ts +1 -1
  139. package/dist/esm/src/generated/version.js +1 -1
  140. package/dist/esm/src/io.d.ts +25 -0
  141. package/dist/esm/src/io.d.ts.map +1 -0
  142. package/dist/esm/src/io.js +73 -0
  143. package/dist/esm/src/io.js.map +1 -0
  144. package/dist/esm/src/logging/console_logger_transport.d.ts +5 -0
  145. package/dist/esm/src/logging/console_logger_transport.d.ts.map +1 -0
  146. package/dist/esm/src/{logger.js → logging/console_logger_transport.js} +40 -90
  147. package/dist/esm/src/logging/console_logger_transport.js.map +1 -0
  148. package/dist/esm/src/logging/logger.d.ts +11 -0
  149. package/dist/esm/src/logging/logger.d.ts.map +1 -0
  150. package/dist/esm/src/logging/logger.js +57 -0
  151. package/dist/esm/src/logging/logger.js.map +1 -0
  152. package/dist/esm/src/logging/logger_transport.d.ts +52 -0
  153. package/dist/esm/src/logging/logger_transport.d.ts.map +1 -0
  154. package/dist/esm/src/logging/logger_transport.js +55 -0
  155. package/dist/esm/src/logging/logger_transport.js.map +1 -0
  156. package/dist/esm/src/promises.d.ts +110 -0
  157. package/dist/esm/src/promises.d.ts.map +1 -0
  158. package/dist/esm/src/promises.js +311 -0
  159. package/dist/esm/src/promises.js.map +1 -0
  160. package/dist/esm/src/types/components.d.ts +11 -3
  161. package/dist/esm/src/types/components.d.ts.map +1 -1
  162. package/dist/esm/src/types/components.js +38 -5
  163. package/dist/esm/src/types/components.js.map +1 -1
  164. package/dist/esm/src/types/discovery.d.ts +4 -0
  165. package/dist/esm/src/types/discovery.d.ts.map +1 -1
  166. package/dist/esm/src/types/errors.d.ts +8 -31
  167. package/dist/esm/src/types/errors.d.ts.map +1 -1
  168. package/dist/esm/src/types/errors.js +16 -68
  169. package/dist/esm/src/types/errors.js.map +1 -1
  170. package/dist/esm/src/types/rpc.d.ts +66 -41
  171. package/dist/esm/src/types/rpc.d.ts.map +1 -1
  172. package/dist/esm/src/types/rpc.js +32 -83
  173. package/dist/esm/src/types/rpc.js.map +1 -1
  174. package/dist/esm/src/user_agent.d.ts +1 -1
  175. package/dist/esm/src/utils/buffer.d.ts +1 -0
  176. package/dist/esm/src/utils/buffer.d.ts.map +1 -1
  177. package/dist/esm/src/utils/completable_promise.d.ts +9 -0
  178. package/dist/esm/src/utils/completable_promise.d.ts.map +1 -0
  179. package/dist/esm/src/utils/completable_promise.js +30 -0
  180. package/dist/esm/src/utils/completable_promise.js.map +1 -0
  181. package/dist/esm/src/utils/rand.d.ts +1 -1
  182. package/dist/esm/src/utils/rand.d.ts.map +1 -1
  183. package/dist/esm/src/utils/rand.js +1 -1
  184. package/dist/esm/src/utils/rand.js.map +1 -1
  185. package/dist/esm/tsconfig.tsbuildinfo +1 -1
  186. package/package.json +2 -6
  187. package/dist/cjs/src/connection/connection.d.ts +0 -84
  188. package/dist/cjs/src/connection/connection.d.ts.map +0 -1
  189. package/dist/cjs/src/connection/connection.js +0 -181
  190. package/dist/cjs/src/connection/connection.js.map +0 -1
  191. package/dist/cjs/src/endpoint/request_signing/basex.d.ts +0 -10
  192. package/dist/cjs/src/endpoint/request_signing/basex.d.ts.map +0 -1
  193. package/dist/cjs/src/endpoint/request_signing/basex.js +0 -138
  194. package/dist/cjs/src/endpoint/request_signing/basex.js.map +0 -1
  195. package/dist/cjs/src/endpoint/request_signing/ed25519.d.ts +0 -17
  196. package/dist/cjs/src/endpoint/request_signing/ed25519.d.ts.map +0 -1
  197. package/dist/cjs/src/endpoint/request_signing/ed25519.js +0 -80
  198. package/dist/cjs/src/endpoint/request_signing/ed25519.js.map +0 -1
  199. package/dist/cjs/src/endpoint/request_signing/v1.d.ts +0 -10
  200. package/dist/cjs/src/endpoint/request_signing/v1.d.ts.map +0 -1
  201. package/dist/cjs/src/endpoint/request_signing/v1.js +0 -151
  202. package/dist/cjs/src/endpoint/request_signing/v1.js.map +0 -1
  203. package/dist/cjs/src/endpoint/request_signing/validate.d.ts +0 -19
  204. package/dist/cjs/src/endpoint/request_signing/validate.d.ts.map +0 -1
  205. package/dist/cjs/src/endpoint/request_signing/validate.js +0 -45
  206. package/dist/cjs/src/endpoint/request_signing/validate.js.map +0 -1
  207. package/dist/cjs/src/generated/proto/discovery_pb.d.ts +0 -18
  208. package/dist/cjs/src/generated/proto/discovery_pb.d.ts.map +0 -1
  209. package/dist/cjs/src/generated/proto/discovery_pb.js +0 -40
  210. package/dist/cjs/src/generated/proto/discovery_pb.js.map +0 -1
  211. package/dist/cjs/src/generated/proto/javascript_pb.d.ts +0 -26
  212. package/dist/cjs/src/generated/proto/javascript_pb.d.ts.map +0 -1
  213. package/dist/cjs/src/generated/proto/javascript_pb.js +0 -52
  214. package/dist/cjs/src/generated/proto/javascript_pb.js.map +0 -1
  215. package/dist/cjs/src/generated/proto/protocol_pb.d.ts +0 -1051
  216. package/dist/cjs/src/generated/proto/protocol_pb.d.ts.map +0 -1
  217. package/dist/cjs/src/generated/proto/protocol_pb.js +0 -1288
  218. package/dist/cjs/src/generated/proto/protocol_pb.js.map +0 -1
  219. package/dist/cjs/src/invocation.d.ts +0 -48
  220. package/dist/cjs/src/invocation.d.ts.map +0 -1
  221. package/dist/cjs/src/invocation.js +0 -158
  222. package/dist/cjs/src/invocation.js.map +0 -1
  223. package/dist/cjs/src/io/decoder.d.ts +0 -9
  224. package/dist/cjs/src/io/decoder.d.ts.map +0 -1
  225. package/dist/cjs/src/io/decoder.js +0 -137
  226. package/dist/cjs/src/io/decoder.js.map +0 -1
  227. package/dist/cjs/src/io/encoder.d.ts +0 -4
  228. package/dist/cjs/src/io/encoder.d.ts.map +0 -1
  229. package/dist/cjs/src/io/encoder.js +0 -41
  230. package/dist/cjs/src/io/encoder.js.map +0 -1
  231. package/dist/cjs/src/journal.d.ts +0 -52
  232. package/dist/cjs/src/journal.d.ts.map +0 -1
  233. package/dist/cjs/src/journal.js +0 -438
  234. package/dist/cjs/src/journal.js.map +0 -1
  235. package/dist/cjs/src/local_state_store.d.ts +0 -14
  236. package/dist/cjs/src/local_state_store.d.ts.map +0 -1
  237. package/dist/cjs/src/local_state_store.js +0 -83
  238. package/dist/cjs/src/local_state_store.js.map +0 -1
  239. package/dist/cjs/src/logger.d.ts +0 -35
  240. package/dist/cjs/src/logger.d.ts.map +0 -1
  241. package/dist/cjs/src/logger.js +0 -151
  242. package/dist/cjs/src/logger.js.map +0 -1
  243. package/dist/cjs/src/promise_combinator_tracker.d.ts +0 -29
  244. package/dist/cjs/src/promise_combinator_tracker.d.ts.map +0 -1
  245. package/dist/cjs/src/promise_combinator_tracker.js +0 -130
  246. package/dist/cjs/src/promise_combinator_tracker.js.map +0 -1
  247. package/dist/cjs/src/state_machine.d.ts +0 -85
  248. package/dist/cjs/src/state_machine.d.ts.map +0 -1
  249. package/dist/cjs/src/state_machine.js +0 -426
  250. package/dist/cjs/src/state_machine.js.map +0 -1
  251. package/dist/cjs/src/types/protocol.d.ts +0 -40
  252. package/dist/cjs/src/types/protocol.d.ts.map +0 -1
  253. package/dist/cjs/src/types/protocol.js +0 -237
  254. package/dist/cjs/src/types/protocol.js.map +0 -1
  255. package/dist/cjs/src/types/types.d.ts +0 -20
  256. package/dist/cjs/src/types/types.d.ts.map +0 -1
  257. package/dist/cjs/src/types/types.js +0 -110
  258. package/dist/cjs/src/types/types.js.map +0 -1
  259. package/dist/cjs/src/utils/message_logger.d.ts +0 -7
  260. package/dist/cjs/src/utils/message_logger.d.ts.map +0 -1
  261. package/dist/cjs/src/utils/message_logger.js +0 -79
  262. package/dist/cjs/src/utils/message_logger.js.map +0 -1
  263. package/dist/cjs/src/utils/promises.d.ts +0 -15
  264. package/dist/cjs/src/utils/promises.d.ts.map +0 -1
  265. package/dist/cjs/src/utils/promises.js +0 -68
  266. package/dist/cjs/src/utils/promises.js.map +0 -1
  267. package/dist/cjs/src/utils/utils.d.ts +0 -3
  268. package/dist/cjs/src/utils/utils.d.ts.map +0 -1
  269. package/dist/cjs/src/utils/utils.js +0 -105
  270. package/dist/cjs/src/utils/utils.js.map +0 -1
  271. package/dist/cjs/test/awakeable.test.d.ts +0 -2
  272. package/dist/cjs/test/awakeable.test.d.ts.map +0 -1
  273. package/dist/cjs/test/awakeable.test.js +0 -141
  274. package/dist/cjs/test/awakeable.test.js.map +0 -1
  275. package/dist/cjs/test/complete_awakeable.test.d.ts +0 -2
  276. package/dist/cjs/test/complete_awakeable.test.d.ts.map +0 -1
  277. package/dist/cjs/test/complete_awakeable.test.js +0 -123
  278. package/dist/cjs/test/complete_awakeable.test.js.map +0 -1
  279. package/dist/cjs/test/eager_state.test.d.ts +0 -2
  280. package/dist/cjs/test/eager_state.test.d.ts.map +0 -1
  281. package/dist/cjs/test/eager_state.test.js +0 -280
  282. package/dist/cjs/test/eager_state.test.js.map +0 -1
  283. package/dist/cjs/test/get_and_set_state.test.d.ts +0 -2
  284. package/dist/cjs/test/get_and_set_state.test.d.ts.map +0 -1
  285. package/dist/cjs/test/get_and_set_state.test.js +0 -233
  286. package/dist/cjs/test/get_and_set_state.test.js.map +0 -1
  287. package/dist/cjs/test/get_state.test.d.ts +0 -2
  288. package/dist/cjs/test/get_state.test.d.ts.map +0 -1
  289. package/dist/cjs/test/get_state.test.js +0 -328
  290. package/dist/cjs/test/get_state.test.js.map +0 -1
  291. package/dist/cjs/test/lambda.test.d.ts +0 -2
  292. package/dist/cjs/test/lambda.test.d.ts.map +0 -1
  293. package/dist/cjs/test/lambda.test.js +0 -258
  294. package/dist/cjs/test/lambda.test.js.map +0 -1
  295. package/dist/cjs/test/message_coders.test.d.ts +0 -2
  296. package/dist/cjs/test/message_coders.test.d.ts.map +0 -1
  297. package/dist/cjs/test/message_coders.test.js +0 -37
  298. package/dist/cjs/test/message_coders.test.js.map +0 -1
  299. package/dist/cjs/test/promise_combinator_tracker.test.d.ts +0 -2
  300. package/dist/cjs/test/promise_combinator_tracker.test.d.ts.map +0 -1
  301. package/dist/cjs/test/promise_combinator_tracker.test.js +0 -156
  302. package/dist/cjs/test/promise_combinator_tracker.test.js.map +0 -1
  303. package/dist/cjs/test/promise_combinators.test.d.ts +0 -2
  304. package/dist/cjs/test/promise_combinators.test.d.ts.map +0 -1
  305. package/dist/cjs/test/promise_combinators.test.js +0 -433
  306. package/dist/cjs/test/promise_combinators.test.js.map +0 -1
  307. package/dist/cjs/test/promises.test.d.ts +0 -2
  308. package/dist/cjs/test/promises.test.d.ts.map +0 -1
  309. package/dist/cjs/test/promises.test.js +0 -32
  310. package/dist/cjs/test/promises.test.js.map +0 -1
  311. package/dist/cjs/test/protocol_stream.test.d.ts +0 -2
  312. package/dist/cjs/test/protocol_stream.test.d.ts.map +0 -1
  313. package/dist/cjs/test/protocol_stream.test.js +0 -243
  314. package/dist/cjs/test/protocol_stream.test.js.map +0 -1
  315. package/dist/cjs/test/protoutils.d.ts +0 -44
  316. package/dist/cjs/test/protoutils.d.ts.map +0 -1
  317. package/dist/cjs/test/protoutils.js +0 -368
  318. package/dist/cjs/test/protoutils.js.map +0 -1
  319. package/dist/cjs/test/service_bind.test.d.ts +0 -2
  320. package/dist/cjs/test/service_bind.test.d.ts.map +0 -1
  321. package/dist/cjs/test/service_bind.test.js +0 -118
  322. package/dist/cjs/test/service_bind.test.js.map +0 -1
  323. package/dist/cjs/test/side_effect.test.d.ts +0 -2
  324. package/dist/cjs/test/side_effect.test.d.ts.map +0 -1
  325. package/dist/cjs/test/side_effect.test.js +0 -133
  326. package/dist/cjs/test/side_effect.test.js.map +0 -1
  327. package/dist/cjs/test/sleep.test.d.ts +0 -2
  328. package/dist/cjs/test/sleep.test.d.ts.map +0 -1
  329. package/dist/cjs/test/sleep.test.js +0 -224
  330. package/dist/cjs/test/sleep.test.js.map +0 -1
  331. package/dist/cjs/test/state_keys.test.d.ts +0 -2
  332. package/dist/cjs/test/state_keys.test.d.ts.map +0 -1
  333. package/dist/cjs/test/state_keys.test.js +0 -92
  334. package/dist/cjs/test/state_keys.test.js.map +0 -1
  335. package/dist/cjs/test/state_machine.test.d.ts +0 -2
  336. package/dist/cjs/test/state_machine.test.d.ts.map +0 -1
  337. package/dist/cjs/test/state_machine.test.js +0 -42
  338. package/dist/cjs/test/state_machine.test.js.map +0 -1
  339. package/dist/cjs/test/testdriver.d.ts +0 -39
  340. package/dist/cjs/test/testdriver.d.ts.map +0 -1
  341. package/dist/cjs/test/testdriver.js +0 -188
  342. package/dist/cjs/test/testdriver.js.map +0 -1
  343. package/dist/cjs/test/utils.test.d.ts +0 -2
  344. package/dist/cjs/test/utils.test.d.ts.map +0 -1
  345. package/dist/cjs/test/utils.test.js +0 -93
  346. package/dist/cjs/test/utils.test.js.map +0 -1
  347. package/dist/esm/src/connection/connection.d.ts +0 -84
  348. package/dist/esm/src/connection/connection.d.ts.map +0 -1
  349. package/dist/esm/src/connection/connection.js +0 -177
  350. package/dist/esm/src/connection/connection.js.map +0 -1
  351. package/dist/esm/src/endpoint/request_signing/basex.d.ts +0 -10
  352. package/dist/esm/src/endpoint/request_signing/basex.d.ts.map +0 -1
  353. package/dist/esm/src/endpoint/request_signing/basex.js +0 -136
  354. package/dist/esm/src/endpoint/request_signing/basex.js.map +0 -1
  355. package/dist/esm/src/endpoint/request_signing/ed25519.d.ts +0 -17
  356. package/dist/esm/src/endpoint/request_signing/ed25519.d.ts.map +0 -1
  357. package/dist/esm/src/endpoint/request_signing/ed25519.js +0 -52
  358. package/dist/esm/src/endpoint/request_signing/ed25519.js.map +0 -1
  359. package/dist/esm/src/endpoint/request_signing/v1.d.ts +0 -10
  360. package/dist/esm/src/endpoint/request_signing/v1.d.ts.map +0 -1
  361. package/dist/esm/src/endpoint/request_signing/v1.js +0 -143
  362. package/dist/esm/src/endpoint/request_signing/v1.js.map +0 -1
  363. package/dist/esm/src/endpoint/request_signing/validate.d.ts +0 -19
  364. package/dist/esm/src/endpoint/request_signing/validate.d.ts.map +0 -1
  365. package/dist/esm/src/endpoint/request_signing/validate.js +0 -40
  366. package/dist/esm/src/endpoint/request_signing/validate.js.map +0 -1
  367. package/dist/esm/src/generated/proto/discovery_pb.d.ts +0 -18
  368. package/dist/esm/src/generated/proto/discovery_pb.d.ts.map +0 -1
  369. package/dist/esm/src/generated/proto/discovery_pb.js +0 -37
  370. package/dist/esm/src/generated/proto/discovery_pb.js.map +0 -1
  371. package/dist/esm/src/generated/proto/javascript_pb.d.ts +0 -26
  372. package/dist/esm/src/generated/proto/javascript_pb.d.ts.map +0 -1
  373. package/dist/esm/src/generated/proto/javascript_pb.js +0 -48
  374. package/dist/esm/src/generated/proto/javascript_pb.js.map +0 -1
  375. package/dist/esm/src/generated/proto/protocol_pb.d.ts +0 -1051
  376. package/dist/esm/src/generated/proto/protocol_pb.d.ts.map +0 -1
  377. package/dist/esm/src/generated/proto/protocol_pb.js +0 -1258
  378. package/dist/esm/src/generated/proto/protocol_pb.js.map +0 -1
  379. package/dist/esm/src/invocation.d.ts +0 -48
  380. package/dist/esm/src/invocation.d.ts.map +0 -1
  381. package/dist/esm/src/invocation.js +0 -153
  382. package/dist/esm/src/invocation.js.map +0 -1
  383. package/dist/esm/src/io/decoder.d.ts +0 -9
  384. package/dist/esm/src/io/decoder.d.ts.map +0 -1
  385. package/dist/esm/src/io/decoder.js +0 -128
  386. package/dist/esm/src/io/decoder.js.map +0 -1
  387. package/dist/esm/src/io/encoder.d.ts +0 -4
  388. package/dist/esm/src/io/encoder.d.ts.map +0 -1
  389. package/dist/esm/src/io/encoder.js +0 -36
  390. package/dist/esm/src/io/encoder.js.map +0 -1
  391. package/dist/esm/src/journal.d.ts +0 -52
  392. package/dist/esm/src/journal.d.ts.map +0 -1
  393. package/dist/esm/src/journal.js +0 -410
  394. package/dist/esm/src/journal.js.map +0 -1
  395. package/dist/esm/src/local_state_store.d.ts +0 -14
  396. package/dist/esm/src/local_state_store.d.ts.map +0 -1
  397. package/dist/esm/src/local_state_store.js +0 -79
  398. package/dist/esm/src/local_state_store.js.map +0 -1
  399. package/dist/esm/src/logger.d.ts +0 -35
  400. package/dist/esm/src/logger.d.ts.map +0 -1
  401. package/dist/esm/src/logger.js.map +0 -1
  402. package/dist/esm/src/promise_combinator_tracker.d.ts +0 -29
  403. package/dist/esm/src/promise_combinator_tracker.d.ts.map +0 -1
  404. package/dist/esm/src/promise_combinator_tracker.js +0 -125
  405. package/dist/esm/src/promise_combinator_tracker.js.map +0 -1
  406. package/dist/esm/src/state_machine.d.ts +0 -85
  407. package/dist/esm/src/state_machine.d.ts.map +0 -1
  408. package/dist/esm/src/state_machine.js +0 -399
  409. package/dist/esm/src/state_machine.js.map +0 -1
  410. package/dist/esm/src/types/protocol.d.ts +0 -40
  411. package/dist/esm/src/types/protocol.d.ts.map +0 -1
  412. package/dist/esm/src/types/protocol.js +0 -206
  413. package/dist/esm/src/types/protocol.js.map +0 -1
  414. package/dist/esm/src/types/types.d.ts +0 -20
  415. package/dist/esm/src/types/types.d.ts.map +0 -1
  416. package/dist/esm/src/types/types.js +0 -105
  417. package/dist/esm/src/types/types.js.map +0 -1
  418. package/dist/esm/src/utils/message_logger.d.ts +0 -7
  419. package/dist/esm/src/utils/message_logger.d.ts.map +0 -1
  420. package/dist/esm/src/utils/message_logger.js +0 -75
  421. package/dist/esm/src/utils/message_logger.js.map +0 -1
  422. package/dist/esm/src/utils/promises.d.ts +0 -15
  423. package/dist/esm/src/utils/promises.d.ts.map +0 -1
  424. package/dist/esm/src/utils/promises.js +0 -63
  425. package/dist/esm/src/utils/promises.js.map +0 -1
  426. package/dist/esm/src/utils/utils.d.ts +0 -3
  427. package/dist/esm/src/utils/utils.d.ts.map +0 -1
  428. package/dist/esm/src/utils/utils.js +0 -101
  429. package/dist/esm/src/utils/utils.js.map +0 -1
  430. package/dist/esm/test/awakeable.test.d.ts +0 -2
  431. package/dist/esm/test/awakeable.test.d.ts.map +0 -1
  432. package/dist/esm/test/awakeable.test.js +0 -139
  433. package/dist/esm/test/awakeable.test.js.map +0 -1
  434. package/dist/esm/test/complete_awakeable.test.d.ts +0 -2
  435. package/dist/esm/test/complete_awakeable.test.d.ts.map +0 -1
  436. package/dist/esm/test/complete_awakeable.test.js +0 -121
  437. package/dist/esm/test/complete_awakeable.test.js.map +0 -1
  438. package/dist/esm/test/eager_state.test.d.ts +0 -2
  439. package/dist/esm/test/eager_state.test.d.ts.map +0 -1
  440. package/dist/esm/test/eager_state.test.js +0 -278
  441. package/dist/esm/test/eager_state.test.js.map +0 -1
  442. package/dist/esm/test/get_and_set_state.test.d.ts +0 -2
  443. package/dist/esm/test/get_and_set_state.test.d.ts.map +0 -1
  444. package/dist/esm/test/get_and_set_state.test.js +0 -231
  445. package/dist/esm/test/get_and_set_state.test.js.map +0 -1
  446. package/dist/esm/test/get_state.test.d.ts +0 -2
  447. package/dist/esm/test/get_state.test.d.ts.map +0 -1
  448. package/dist/esm/test/get_state.test.js +0 -326
  449. package/dist/esm/test/get_state.test.js.map +0 -1
  450. package/dist/esm/test/lambda.test.d.ts +0 -2
  451. package/dist/esm/test/lambda.test.d.ts.map +0 -1
  452. package/dist/esm/test/lambda.test.js +0 -233
  453. package/dist/esm/test/lambda.test.js.map +0 -1
  454. package/dist/esm/test/message_coders.test.d.ts +0 -2
  455. package/dist/esm/test/message_coders.test.d.ts.map +0 -1
  456. package/dist/esm/test/message_coders.test.js +0 -35
  457. package/dist/esm/test/message_coders.test.js.map +0 -1
  458. package/dist/esm/test/promise_combinator_tracker.test.d.ts +0 -2
  459. package/dist/esm/test/promise_combinator_tracker.test.d.ts.map +0 -1
  460. package/dist/esm/test/promise_combinator_tracker.test.js +0 -154
  461. package/dist/esm/test/promise_combinator_tracker.test.js.map +0 -1
  462. package/dist/esm/test/promise_combinators.test.d.ts +0 -2
  463. package/dist/esm/test/promise_combinators.test.d.ts.map +0 -1
  464. package/dist/esm/test/promise_combinators.test.js +0 -431
  465. package/dist/esm/test/promise_combinators.test.js.map +0 -1
  466. package/dist/esm/test/promises.test.d.ts +0 -2
  467. package/dist/esm/test/promises.test.d.ts.map +0 -1
  468. package/dist/esm/test/promises.test.js +0 -30
  469. package/dist/esm/test/promises.test.js.map +0 -1
  470. package/dist/esm/test/protocol_stream.test.d.ts +0 -2
  471. package/dist/esm/test/protocol_stream.test.d.ts.map +0 -1
  472. package/dist/esm/test/protocol_stream.test.js +0 -218
  473. package/dist/esm/test/protocol_stream.test.js.map +0 -1
  474. package/dist/esm/test/protoutils.d.ts +0 -44
  475. package/dist/esm/test/protoutils.d.ts.map +0 -1
  476. package/dist/esm/test/protoutils.js +0 -335
  477. package/dist/esm/test/protoutils.js.map +0 -1
  478. package/dist/esm/test/service_bind.test.d.ts +0 -2
  479. package/dist/esm/test/service_bind.test.d.ts.map +0 -1
  480. package/dist/esm/test/service_bind.test.js +0 -93
  481. package/dist/esm/test/service_bind.test.js.map +0 -1
  482. package/dist/esm/test/side_effect.test.d.ts +0 -2
  483. package/dist/esm/test/side_effect.test.d.ts.map +0 -1
  484. package/dist/esm/test/side_effect.test.js +0 -131
  485. package/dist/esm/test/side_effect.test.js.map +0 -1
  486. package/dist/esm/test/sleep.test.d.ts +0 -2
  487. package/dist/esm/test/sleep.test.d.ts.map +0 -1
  488. package/dist/esm/test/sleep.test.js +0 -222
  489. package/dist/esm/test/sleep.test.js.map +0 -1
  490. package/dist/esm/test/state_keys.test.d.ts +0 -2
  491. package/dist/esm/test/state_keys.test.d.ts.map +0 -1
  492. package/dist/esm/test/state_keys.test.js +0 -90
  493. package/dist/esm/test/state_keys.test.js.map +0 -1
  494. package/dist/esm/test/state_machine.test.d.ts +0 -2
  495. package/dist/esm/test/state_machine.test.d.ts.map +0 -1
  496. package/dist/esm/test/state_machine.test.js +0 -40
  497. package/dist/esm/test/state_machine.test.js.map +0 -1
  498. package/dist/esm/test/testdriver.d.ts +0 -39
  499. package/dist/esm/test/testdriver.d.ts.map +0 -1
  500. package/dist/esm/test/testdriver.js +0 -182
  501. package/dist/esm/test/testdriver.js.map +0 -1
  502. package/dist/esm/test/utils.test.d.ts +0 -2
  503. package/dist/esm/test/utils.test.d.ts.map +0 -1
  504. package/dist/esm/test/utils.test.js +0 -91
  505. package/dist/esm/test/utils.test.js.map +0 -1
@@ -1,326 +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 { 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
- });
55
- it("handles completion with empty", async () => {
56
- const result = await new TestDriver(new GetStringStateGreeter(), [
57
- startMessage({}),
58
- inputMessage(greetRequest("Till")),
59
- completionMessage(1, undefined, true),
60
- ]).run();
61
- expect(result).toStrictEqual([
62
- getStateMessage("STATE"),
63
- outputMessage(greetResponse("Hello nobody")),
64
- END_MESSAGE,
65
- ]);
66
- });
67
- it("handles completion with empty string", async () => {
68
- const result = await new TestDriver(new GetStringStateGreeter(), [
69
- startMessage({}),
70
- inputMessage(greetRequest("Till")),
71
- completionMessage(1, Buffer.from(JSON.stringify(""))),
72
- ]).run();
73
- expect(result).toStrictEqual([
74
- getStateMessage("STATE"),
75
- outputMessage(greetResponse("Hello ")),
76
- END_MESSAGE,
77
- ]);
78
- });
79
- it("handles completion with failure", async () => {
80
- const result = await new TestDriver(new GetStringStateGreeter(), [
81
- startMessage({}),
82
- inputMessage(greetRequest("Till")),
83
- completionMessage(1, undefined, undefined, failure("Canceled")),
84
- ]).run();
85
- expect(result.length).toStrictEqual(3);
86
- expect(result[0]).toStrictEqual(getStateMessage("STATE"));
87
- checkTerminalError(result[1], "Canceled");
88
- expect(result[2]).toStrictEqual(END_MESSAGE);
89
- });
90
- it("handles replay with value", async () => {
91
- const result = await new TestDriver(new GetStringStateGreeter(), [
92
- startMessage({}),
93
- inputMessage(greetRequest("Till")),
94
- getStateMessage("STATE", "Francesco"),
95
- ]).run();
96
- expect(result).toStrictEqual([
97
- outputMessage(greetResponse("Hello Francesco")),
98
- END_MESSAGE,
99
- ]);
100
- });
101
- it("handles replay with empty", async () => {
102
- const result = await new TestDriver(new GetStringStateGreeter(), [
103
- startMessage({}),
104
- inputMessage(greetRequest("Till")),
105
- getStateMessage("STATE", undefined, true),
106
- ]).run();
107
- expect(result).toStrictEqual([
108
- outputMessage(greetResponse("Hello nobody")),
109
- END_MESSAGE,
110
- ]);
111
- });
112
- it("handles replay with failure", async () => {
113
- const result = await new TestDriver(new GetStringStateGreeter(), [
114
- startMessage({}),
115
- inputMessage(greetRequest("Till")),
116
- getStateMessage("STATE", undefined, undefined, failure("Canceled")),
117
- ]).run();
118
- expect(result.length).toStrictEqual(2);
119
- checkTerminalError(result[0], "Canceled");
120
- expect(result[1]).toStrictEqual(END_MESSAGE);
121
- });
122
- });
123
- class GetNumberStateGreeter {
124
- async greet(ctx) {
125
- // state
126
- const state = await ctx.get("STATE");
127
- return TestResponse.create({ greeting: `Hello ${state}` });
128
- }
129
- }
130
- describe("GetNumberStateGreeter", () => {
131
- it("sends message to the runtime", async () => {
132
- const result = await new TestDriver(new GetNumberStateGreeter(), [
133
- startMessage({}),
134
- inputMessage(greetRequest("Till")),
135
- ]).run();
136
- expect(result).toStrictEqual([
137
- getStateMessage("STATE"),
138
- suspensionMessage([1]),
139
- ]);
140
- });
141
- it("handles completion with value", async () => {
142
- const result = await new TestDriver(new GetNumberStateGreeter(), [
143
- startMessage({}),
144
- inputMessage(greetRequest("Till")),
145
- completionMessage(1, Buffer.from(JSON.stringify(70))),
146
- ]).run();
147
- expect(result).toStrictEqual([
148
- getStateMessage("STATE"),
149
- outputMessage(greetResponse("Hello 70")),
150
- END_MESSAGE,
151
- ]);
152
- });
153
- it("handles completion with value 0", async () => {
154
- const result = await new TestDriver(new GetNumberStateGreeter(), [
155
- startMessage({}),
156
- inputMessage(greetRequest("Till")),
157
- completionMessage(1, Buffer.from(JSON.stringify(0))),
158
- ]).run();
159
- expect(result).toStrictEqual([
160
- getStateMessage("STATE"),
161
- outputMessage(greetResponse("Hello 0")),
162
- END_MESSAGE,
163
- ]);
164
- });
165
- it("handles completion with empty", async () => {
166
- const result = await new TestDriver(new GetNumberStateGreeter(), [
167
- startMessage({}),
168
- inputMessage(greetRequest("Till")),
169
- completionMessage(1, undefined, true),
170
- ]).run();
171
- expect(result).toStrictEqual([
172
- getStateMessage("STATE"),
173
- outputMessage(greetResponse("Hello null")),
174
- END_MESSAGE,
175
- ]);
176
- });
177
- it("handles replay with value", async () => {
178
- const result = await new TestDriver(new GetNumberStateGreeter(), [
179
- startMessage({}),
180
- inputMessage(greetRequest("Till")),
181
- getStateMessage("STATE", 70),
182
- ]).run();
183
- expect(result).toStrictEqual([
184
- outputMessage(greetResponse("Hello 70")),
185
- END_MESSAGE,
186
- ]);
187
- });
188
- it("handles replay with value 0", async () => {
189
- const result = await new TestDriver(new GetNumberStateGreeter(), [
190
- startMessage({}),
191
- inputMessage(greetRequest("Till")),
192
- getStateMessage("STATE", 0),
193
- ]).run();
194
- expect(result).toStrictEqual([
195
- outputMessage(greetResponse("Hello 0")),
196
- END_MESSAGE,
197
- ]);
198
- });
199
- it("handles replay with empty", async () => {
200
- const result = await new TestDriver(new GetNumberStateGreeter(), [
201
- startMessage({}),
202
- inputMessage(greetRequest("Till")),
203
- getStateMessage("STATE", undefined, true),
204
- ]).run();
205
- expect(result).toStrictEqual([
206
- outputMessage(greetResponse("Hello null")),
207
- END_MESSAGE,
208
- ]);
209
- });
210
- it("fails on journal mismatch. Completed with SetStateMessage.", async () => {
211
- const result = await new TestDriver(new GetNumberStateGreeter(), [
212
- startMessage({}),
213
- inputMessage(greetRequest("Till")),
214
- setStateMessage("STATE", 0),
215
- ]).run();
216
- expect(result.length).toStrictEqual(1);
217
- checkJournalMismatchError(result[0]);
218
- });
219
- });
220
- class GetNumberListStateGreeter {
221
- async greet(ctx) {
222
- // state
223
- const state = await ctx.get("STATE");
224
- if (state) {
225
- return TestResponse.create({
226
- greeting: `Hello index 0: ${state[0]} - index 1: ${state[1]}`,
227
- });
228
- }
229
- else {
230
- return TestResponse.create({ greeting: `Hello no state found` });
231
- }
232
- }
233
- }
234
- describe("GetNumberListStateGreeter", () => {
235
- it("sends message to runtime", async () => {
236
- const result = await new TestDriver(new GetNumberListStateGreeter(), [
237
- startMessage({}),
238
- inputMessage(greetRequest("Till")),
239
- ]).run();
240
- expect(result).toStrictEqual([
241
- getStateMessage("STATE"),
242
- suspensionMessage([1]),
243
- ]);
244
- });
245
- it("handles completion with value", async () => {
246
- const result = await new TestDriver(new GetNumberListStateGreeter(), [
247
- startMessage({}),
248
- inputMessage(greetRequest("Till")),
249
- completionMessage(1, Buffer.from(JSON.stringify([5, 4]))),
250
- ]).run();
251
- expect(result).toStrictEqual([
252
- getStateMessage("STATE"),
253
- outputMessage(greetResponse("Hello index 0: 5 - index 1: 4")),
254
- END_MESSAGE,
255
- ]);
256
- });
257
- it("handles completion with value empty list", async () => {
258
- const result = await new TestDriver(new GetNumberListStateGreeter(), [
259
- startMessage({}),
260
- inputMessage(greetRequest("Till")),
261
- completionMessage(1, Buffer.from(JSON.stringify([]))),
262
- ]).run();
263
- // For an empty list it will print undefined values for the first two indices
264
- // but still recognize it as a list
265
- expect(result).toStrictEqual([
266
- getStateMessage("STATE"),
267
- outputMessage(greetResponse("Hello index 0: undefined - index 1: undefined")),
268
- END_MESSAGE,
269
- ]);
270
- });
271
- it("handles completion with empty", async () => {
272
- const result = await new TestDriver(new GetNumberListStateGreeter(), [
273
- startMessage({}),
274
- inputMessage(greetRequest("Till")),
275
- completionMessage(1, undefined, true),
276
- ]).run();
277
- expect(result).toStrictEqual([
278
- getStateMessage("STATE"),
279
- outputMessage(greetResponse("Hello no state found")),
280
- END_MESSAGE,
281
- ]);
282
- });
283
- it("handles replay with value", async () => {
284
- const result = await new TestDriver(new GetNumberListStateGreeter(), [
285
- startMessage({}),
286
- inputMessage(greetRequest("Till")),
287
- getStateMessage("STATE", [5, 4]),
288
- ]).run();
289
- expect(result).toStrictEqual([
290
- outputMessage(greetResponse("Hello index 0: 5 - index 1: 4")),
291
- END_MESSAGE,
292
- ]);
293
- });
294
- it("handles replay with value empty list", async () => {
295
- const result = await new TestDriver(new GetNumberListStateGreeter(), [
296
- startMessage(),
297
- inputMessage(greetRequest("Till")),
298
- getStateMessage("STATE", []),
299
- ]).run();
300
- expect(result).toStrictEqual([
301
- outputMessage(greetResponse("Hello index 0: undefined - index 1: undefined")),
302
- END_MESSAGE,
303
- ]);
304
- });
305
- it("handles replay with value empty list", async () => {
306
- const result = await new TestDriver(new GetNumberListStateGreeter(), [
307
- startMessage(),
308
- inputMessage(greetRequest("Till")),
309
- getStateMessage("STATE", undefined, true),
310
- ]).run();
311
- expect(result).toStrictEqual([
312
- outputMessage(greetResponse("Hello no state found")),
313
- END_MESSAGE,
314
- ]);
315
- });
316
- it("fails on journal mismatch. Completed with wrong state key", async () => {
317
- const result = await new TestDriver(new GetNumberListStateGreeter(), [
318
- startMessage(),
319
- inputMessage(greetRequest("Till")),
320
- getStateMessage("STATEE", undefined, true),
321
- ]).run();
322
- expect(result.length).toStrictEqual(1);
323
- checkJournalMismatchError(result[0]);
324
- });
325
- });
326
- //# sourceMappingURL=get_state.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"get_state.test.js","sourceRoot":"","sources":["../../../test/get_state.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=lambda.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"lambda.test.d.ts","sourceRoot":"","sources":["../../../test/lambda.test.ts"],"names":[],"mappings":""}
@@ -1,233 +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 * as restate from "../src/lambda.js";
12
- import { encodeMessage } from "../src/io/encoder.js";
13
- import { awakeableMessage, END_MESSAGE, getStateMessage, greetRequest, greetResponse, inputMessage, outputMessage, startMessage, } from "./protoutils.js";
14
- import { decodeLambdaBody } from "../src/io/decoder.js";
15
- import { TestResponse } from "./testdriver.js";
16
- import { ServiceType } from "../src/types/discovery.js";
17
- import { X_RESTATE_SERVER } from "../src/user_agent.js";
18
- import { serviceDiscoveryProtocolVersionToHeaderValue, serviceProtocolVersionToHeaderValue, } from "../src/types/protocol.js";
19
- import { ServiceProtocolVersion } from "../src/generated/proto/protocol_pb.js";
20
- import { ServiceDiscoveryProtocolVersion } from "../src/generated/proto/discovery_pb.js";
21
- import { describe, expect, it } from "vitest";
22
- class LambdaGreeter {
23
- async greet(ctx
24
- /*req: TestRequest */
25
- ) {
26
- // state
27
- const state = (await ctx.get("STATE")) || "nobody";
28
- return TestResponse.create({ greeting: `Hello ${state}` });
29
- }
30
- }
31
- class NodeBufferJsonSerde {
32
- contentType = "application/json";
33
- serialize(value) {
34
- return Buffer.from(JSON.stringify(value));
35
- }
36
- deserialize(data) {
37
- return JSON.parse(data.toString());
38
- }
39
- }
40
- describe("Lambda: decodeMessage", () => {
41
- it("returns a list of decoded messages", () => {
42
- const messages = [
43
- startMessage({ knownEntries: 2 }),
44
- inputMessage(Buffer.from(greetRequest("Pete"))),
45
- getStateMessage("STATE", "Foo", undefined, undefined, new NodeBufferJsonSerde()),
46
- ];
47
- const serializedMsgs = serializeMessages(messages);
48
- const decodedMessages = decodeLambdaBody(serializedMsgs);
49
- const serializedAgain = serializeMessages(decodedMessages);
50
- expect(serializedMsgs).toStrictEqual(serializedAgain);
51
- });
52
- it("returns a list of decoded messages when last message body is empty", () => {
53
- const messages = [
54
- startMessage({ knownEntries: 2 }),
55
- inputMessage(Buffer.alloc(0)),
56
- ];
57
- const serializedMsgs = serializeMessages(messages);
58
- const decodedMessages = decodeLambdaBody(serializedMsgs);
59
- const serializedAgain = serializeMessages(decodedMessages);
60
- expect(serializedMsgs).toStrictEqual(serializedAgain);
61
- });
62
- it("should returns a list of decoded messages when last message body is empty (2)", () => {
63
- const messages = [
64
- startMessage({ knownEntries: 2 }),
65
- inputMessage(greetRequest("Pete")),
66
- awakeableMessage(),
67
- ];
68
- const serializedMsgs = serializeMessages(messages);
69
- const decodedMessages = decodeLambdaBody(serializedMsgs);
70
- const serializedAgain = serializeMessages(decodedMessages);
71
- expect(serializedMsgs).toStrictEqual(serializedAgain);
72
- });
73
- it("fails on an invalid input message with random signs at end of message", () => {
74
- const messages = [
75
- startMessage({ knownEntries: 2 }),
76
- inputMessage(greetRequest("Pete")),
77
- getStateMessage("STATE", "Fooo"),
78
- ];
79
- // appending random character to the base 64 encoded message
80
- const serializedMsgs = serializeMessages(messages) + "a";
81
- const decodedMessages = () => decodeLambdaBody(serializedMsgs);
82
- expect(decodedMessages).toThrow();
83
- });
84
- it("fails on an invalid input message with random signs in front of message", () => {
85
- const messages = [
86
- startMessage({ knownEntries: 2 }),
87
- inputMessage(greetRequest("Pete")),
88
- getStateMessage("STATE", "Fooo"),
89
- ];
90
- // appending random character to the base 64 encoded message
91
- const serializedMsgs = "a" + serializeMessages(messages);
92
- const decodedMessages = () => decodeLambdaBody(serializedMsgs);
93
- expect(decodedMessages).toThrow();
94
- });
95
- });
96
- describe("LambdaGreeter", () => {
97
- it("sends output response", async () => {
98
- const handler = getTestHandler();
99
- const request = apiProxyGatewayEvent("/invoke/greeter/greet", serviceProtocolVersionToHeaderValue(ServiceProtocolVersion.V1), serializeMessages([
100
- startMessage({ knownEntries: 2, key: "Pete" }),
101
- inputMessage(greetRequest("Pete")),
102
- getStateMessage("STATE", "Foo"),
103
- ]));
104
- const result = await handler(request, {});
105
- expect(result.statusCode).toStrictEqual(200);
106
- expect(result.headers).toStrictEqual({
107
- "content-type": serviceProtocolVersionToHeaderValue(ServiceProtocolVersion.V1),
108
- "x-restate-server": X_RESTATE_SERVER,
109
- });
110
- expect(result.isBase64Encoded).toStrictEqual(true);
111
- expect(deserializeMessages(result.body)).toStrictEqual([
112
- outputMessage(greetResponse("Hello Foo")),
113
- END_MESSAGE,
114
- ]);
115
- });
116
- it("fails on invalid path", async () => {
117
- const handler = getTestHandler();
118
- const request = apiProxyGatewayEvent("/invoke/greeter", serviceProtocolVersionToHeaderValue(ServiceProtocolVersion.V1), serializeMessages([
119
- startMessage({ knownEntries: 1 }),
120
- inputMessage(greetRequest("Pete")),
121
- ]));
122
- const result = await handler(request, {});
123
- expect(result.statusCode).toStrictEqual(404);
124
- expect(result.headers).toStrictEqual({
125
- "content-type": "application/json",
126
- "x-restate-server": X_RESTATE_SERVER,
127
- });
128
- expect(result.isBase64Encoded).toStrictEqual(true);
129
- });
130
- it("fails on unsupported service protocol", async () => {
131
- const handler = getTestHandler();
132
- const request = apiProxyGatewayEvent("/invoke/greeter/greet", "unsupportedServiceProtocol", serializeMessages([
133
- startMessage({ knownEntries: 1 }),
134
- inputMessage(greetRequest("Pete")),
135
- ]));
136
- const result = await handler(request, {});
137
- expect(result.statusCode).toStrictEqual(415);
138
- expect(result.headers).toStrictEqual({
139
- "content-type": "application/json",
140
- "x-restate-server": X_RESTATE_SERVER,
141
- });
142
- });
143
- it("fails on invalid path no 'invoke' or 'discover'", async () => {
144
- const handler = getTestHandler();
145
- const request = apiProxyGatewayEvent("/something/greeter/greet", serviceProtocolVersionToHeaderValue(ServiceProtocolVersion.V1), serializeMessages([
146
- startMessage({ knownEntries: 1 }),
147
- inputMessage(greetRequest("Pete")),
148
- ]));
149
- const result = await handler(request, {});
150
- expect(result.statusCode).toStrictEqual(404);
151
- expect(result.headers).toStrictEqual({
152
- "content-type": "application/json",
153
- "x-restate-server": X_RESTATE_SERVER,
154
- });
155
- });
156
- it("fails on invalid path non-existing URL", async () => {
157
- const handler = getTestHandler();
158
- const request = apiProxyGatewayEvent("/invoke/greeter/greets", serviceProtocolVersionToHeaderValue(ServiceProtocolVersion.V1), serializeMessages([
159
- startMessage({ knownEntries: 1 }),
160
- inputMessage(greetRequest("Pete")),
161
- ]));
162
- const result = await handler(request, {});
163
- expect(result.statusCode).toStrictEqual(404);
164
- expect(result.headers).toStrictEqual({
165
- "content-type": "application/json",
166
- "x-restate-server": X_RESTATE_SERVER,
167
- });
168
- });
169
- it("handles discovery", async () => {
170
- const handler = getTestHandler();
171
- const request = apiProxyGatewayEvent("/discover", "application/json", Buffer.alloc(0).toString("base64"), serviceDiscoveryProtocolVersionToHeaderValue(ServiceDiscoveryProtocolVersion.V1));
172
- const result = await handler(request, {});
173
- expect(result.statusCode).toStrictEqual(200);
174
- expect(result.headers).toStrictEqual({
175
- "content-type": serviceDiscoveryProtocolVersionToHeaderValue(ServiceDiscoveryProtocolVersion.V1),
176
- "x-restate-server": X_RESTATE_SERVER,
177
- });
178
- expect(result.isBase64Encoded).toStrictEqual(true);
179
- const decodedResponse = JSON.parse(Buffer.from(result.body, "base64").toString("utf8"));
180
- expect(decodedResponse.services[0].name).toStrictEqual("greeter");
181
- expect(decodedResponse.services[0].ty).toEqual(ServiceType.VIRTUAL_OBJECT);
182
- });
183
- it("fails on wrong discovery protocol", async () => {
184
- const handler = getTestHandler();
185
- const request = apiProxyGatewayEvent("/discover", "application/json", Buffer.alloc(0).toString("base64"), "unsupportedDiscoveryProtocol");
186
- const result = await handler(request, {});
187
- expect(result.statusCode).toStrictEqual(415);
188
- expect(result.headers).toStrictEqual({
189
- "content-type": "application/json",
190
- "x-restate-server": X_RESTATE_SERVER,
191
- });
192
- });
193
- });
194
- function getTestHandler() {
195
- return restate
196
- .endpoint()
197
- .bind(restate.object({
198
- name: "greeter",
199
- handlers: {
200
- // eslint-disable @typescript-eslint/no-unused-vars
201
- greet: (ctx) => new LambdaGreeter().greet(ctx /*req*/),
202
- },
203
- }))
204
- .handler();
205
- }
206
- function apiProxyGatewayEvent(invokePath, contentType, messagesBase64, accept) {
207
- return {
208
- resource: "",
209
- stageVariables: null,
210
- body: messagesBase64,
211
- httpMethod: "POST",
212
- headers: { "content-type": contentType, accept: accept },
213
- queryStringParameters: {},
214
- pathParameters: {},
215
- requestContext: {},
216
- multiValueHeaders: {},
217
- multiValueQueryStringParameters: {},
218
- path: invokePath,
219
- isBase64Encoded: true,
220
- };
221
- }
222
- function serializeMessages(messages) {
223
- let buf = Buffer.alloc(0);
224
- messages.forEach((msg) => {
225
- const msgBuf = encodeMessage(msg);
226
- buf = Buffer.concat([buf, msgBuf]);
227
- });
228
- return buf.toString("base64");
229
- }
230
- function deserializeMessages(body) {
231
- return decodeLambdaBody(body);
232
- }
233
- //# sourceMappingURL=lambda.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"lambda.test.js","sourceRoot":"","sources":["../../../test/lambda.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=message_coders.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"message_coders.test.d.ts","sourceRoot":"","sources":["../../../test/message_coders.test.ts"],"names":[],"mappings":""}
@@ -1,35 +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 { streamDecoder } from "../src/io/decoder.js";
12
- import { backgroundInvokeMessage } from "./protoutils.js";
13
- import { encodeMessage } from "../src/io/encoder.js";
14
- import { describe, expect, it } from "vitest";
15
- describe("The stream decoder", () => {
16
- it("should handle decoding of messages across chunks", async () => {
17
- const largeMessage = backgroundInvokeMessage("test", "test", Buffer.alloc(2048));
18
- const largeMessageBytes = encodeMessage(largeMessage);
19
- const result = [];
20
- const decoder = streamDecoder();
21
- const resultPromise = (async () => {
22
- for await (const chunk of decoder.readable) {
23
- result.push(chunk);
24
- }
25
- })();
26
- const writer = decoder.writable.getWriter();
27
- await writer.write(largeMessageBytes.slice(0, 122));
28
- await writer.write(largeMessageBytes.slice(122));
29
- await writer.close();
30
- await resultPromise;
31
- expect(result.length).toStrictEqual(1);
32
- expect(result[0]).toStrictEqual(largeMessage);
33
- });
34
- });
35
- //# sourceMappingURL=message_coders.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"message_coders.test.js","sourceRoot":"","sources":["../../../test/message_coders.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAE9C,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;IAClC,EAAE,CAAC,kDAAkD,EAAE,KAAK,IAAI,EAAE;QAChE,MAAM,YAAY,GAAG,uBAAuB,CAC1C,MAAM,EACN,MAAM,EACN,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CACnB,CAAC;QACF,MAAM,iBAAiB,GAAG,aAAa,CAAC,YAAY,CAAC,CAAC;QAEtD,MAAM,MAAM,GAAc,EAAE,CAAC;QAE7B,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;QAEhC,MAAM,aAAa,GAAG,CAAC,KAAK,IAAI,EAAE;YAChC,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;gBAC3C,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACrB,CAAC;QACH,CAAC,CAAC,EAAE,CAAC;QAEL,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC;QAC5C,MAAM,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;QACpD,MAAM,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;QACjD,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;QACrB,MAAM,aAAa,CAAC;QAEpB,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;QACvC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;IAChD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=promise_combinator_tracker.test.d.ts.map