movehat 0.2.3 → 0.2.5

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 (557) hide show
  1. package/README.md +1 -1
  2. package/dist/cli.d.ts +0 -1
  3. package/dist/cli.js +0 -1
  4. package/dist/commands/compile.d.ts +0 -1
  5. package/dist/commands/compile.js +0 -1
  6. package/dist/commands/fork/create.d.ts +1 -1
  7. package/dist/commands/fork/create.js +18 -3
  8. package/dist/commands/fork/fund.d.ts +0 -1
  9. package/dist/commands/fork/fund.js +0 -1
  10. package/dist/commands/fork/list.d.ts +0 -1
  11. package/dist/commands/fork/list.js +0 -1
  12. package/dist/commands/fork/serve.d.ts +0 -1
  13. package/dist/commands/fork/serve.js +0 -1
  14. package/dist/commands/fork/view-resource.d.ts +0 -1
  15. package/dist/commands/fork/view-resource.js +0 -1
  16. package/dist/commands/init.d.ts +0 -1
  17. package/dist/commands/init.js +0 -1
  18. package/dist/commands/run.d.ts +0 -1
  19. package/dist/commands/run.js +0 -1
  20. package/dist/commands/test-move.d.ts +0 -1
  21. package/dist/commands/test-move.js +0 -1
  22. package/dist/commands/test.d.ts +0 -1
  23. package/dist/commands/test.js +8 -1
  24. package/dist/commands/update.d.ts +0 -1
  25. package/dist/commands/update.js +0 -1
  26. package/dist/core/AccountManager.d.ts +15 -2
  27. package/dist/core/AccountManager.js +32 -20
  28. package/dist/core/Publisher.d.ts +0 -1
  29. package/dist/core/Publisher.js +0 -1
  30. package/dist/core/config.d.ts +0 -1
  31. package/dist/core/config.js +0 -1
  32. package/dist/core/contract.d.ts +0 -1
  33. package/dist/core/contract.js +0 -1
  34. package/dist/core/deployments.d.ts +0 -1
  35. package/dist/core/deployments.js +0 -1
  36. package/dist/core/movementProfile.d.ts +0 -1
  37. package/dist/core/movementProfile.js +0 -1
  38. package/dist/core/shell.d.ts +0 -1
  39. package/dist/core/shell.js +0 -1
  40. package/dist/errors.d.ts +0 -1
  41. package/dist/errors.js +0 -1
  42. package/dist/fork/api.d.ts +24 -1
  43. package/dist/fork/api.js +95 -1
  44. package/dist/fork/manager.d.ts +15 -2
  45. package/dist/fork/manager.js +20 -2
  46. package/dist/fork/server.d.ts +19 -1
  47. package/dist/fork/server.js +188 -8
  48. package/dist/fork/storage.d.ts +0 -1
  49. package/dist/fork/storage.js +50 -32
  50. package/dist/fork/test.d.ts +0 -1
  51. package/dist/fork/test.js +0 -1
  52. package/dist/harness/Harness.d.ts +0 -1
  53. package/dist/harness/Harness.js +6 -2
  54. package/dist/harness/codeObject.d.ts +0 -1
  55. package/dist/harness/codeObject.js +0 -1
  56. package/dist/harness/errors.d.ts +0 -1
  57. package/dist/harness/errors.js +0 -1
  58. package/dist/harness/index.d.ts +0 -1
  59. package/dist/harness/index.js +0 -1
  60. package/dist/harness/proxy.d.ts +12 -1
  61. package/dist/harness/proxy.js +23 -1
  62. package/dist/harness/script.d.ts +0 -1
  63. package/dist/harness/script.js +0 -1
  64. package/dist/harness/view.d.ts +0 -1
  65. package/dist/harness/view.js +0 -1
  66. package/dist/helpers/assertions.d.ts +0 -1
  67. package/dist/helpers/assertions.js +0 -1
  68. package/dist/helpers/banner.d.ts +0 -1
  69. package/dist/helpers/banner.js +0 -1
  70. package/dist/helpers/index.d.ts +0 -1
  71. package/dist/helpers/index.js +0 -1
  72. package/dist/helpers/move-tests.d.ts +0 -1
  73. package/dist/helpers/move-tests.js +0 -1
  74. package/dist/helpers/npm-registry.d.ts +0 -1
  75. package/dist/helpers/npm-registry.js +0 -1
  76. package/dist/helpers/semver-utils.d.ts +0 -1
  77. package/dist/helpers/semver-utils.js +0 -1
  78. package/dist/helpers/setup.d.ts +0 -1
  79. package/dist/helpers/setup.js +0 -1
  80. package/dist/helpers/setupLocalTesting.d.ts +2 -5
  81. package/dist/helpers/setupLocalTesting.js +2 -3
  82. package/dist/helpers/testFixtures.d.ts +0 -1
  83. package/dist/helpers/testFixtures.js +0 -1
  84. package/dist/helpers/version-check.d.ts +0 -1
  85. package/dist/helpers/version-check.js +0 -1
  86. package/dist/index.d.ts +0 -1
  87. package/dist/index.js +0 -1
  88. package/dist/node/LocalNodeManager.d.ts +1 -2
  89. package/dist/node/LocalNodeManager.js +6 -4
  90. package/dist/runtime.d.ts +0 -1
  91. package/dist/runtime.js +0 -1
  92. package/dist/types/config.d.ts +0 -1
  93. package/dist/types/config.js +0 -1
  94. package/dist/types/fork.d.ts +0 -1
  95. package/dist/types/fork.js +0 -1
  96. package/dist/types/harness.d.ts +0 -1
  97. package/dist/types/harness.js +0 -1
  98. package/dist/types/runtime.d.ts +0 -1
  99. package/dist/types/runtime.js +0 -1
  100. package/dist/ui/colors.d.ts +0 -1
  101. package/dist/ui/colors.js +0 -1
  102. package/dist/ui/formatters.d.ts +0 -1
  103. package/dist/ui/formatters.js +0 -1
  104. package/dist/ui/index.d.ts +0 -1
  105. package/dist/ui/index.js +0 -1
  106. package/dist/ui/logger.d.ts +0 -1
  107. package/dist/ui/logger.js +0 -1
  108. package/dist/ui/spinner.d.ts +0 -1
  109. package/dist/ui/spinner.js +0 -1
  110. package/dist/ui/symbols.d.ts +0 -1
  111. package/dist/ui/symbols.js +0 -1
  112. package/dist/ui/table.d.ts +0 -1
  113. package/dist/ui/table.js +0 -1
  114. package/dist/utils/address.d.ts +0 -1
  115. package/dist/utils/address.js +0 -1
  116. package/dist/utils/childProcessAdapter.d.ts +0 -1
  117. package/dist/utils/childProcessAdapter.js +46 -20
  118. package/dist/utils/movementCli.d.ts +5 -0
  119. package/dist/utils/movementCli.js +91 -0
  120. package/dist/utils/parseCliOutput.d.ts +0 -1
  121. package/dist/utils/parseCliOutput.js +0 -1
  122. package/dist/utils/redact.d.ts +3 -3
  123. package/dist/utils/redact.js +6 -5
  124. package/dist/utils/runCli.d.ts +0 -1
  125. package/dist/utils/runCli.js +10 -2
  126. package/package.json +4 -4
  127. package/dist/__tests__/deployContract.test.d.ts +0 -2
  128. package/dist/__tests__/deployContract.test.d.ts.map +0 -1
  129. package/dist/__tests__/deployContract.test.js +0 -377
  130. package/dist/__tests__/deployContract.test.js.map +0 -1
  131. package/dist/__tests__/errors.test.d.ts +0 -2
  132. package/dist/__tests__/errors.test.d.ts.map +0 -1
  133. package/dist/__tests__/errors.test.js +0 -46
  134. package/dist/__tests__/errors.test.js.map +0 -1
  135. package/dist/__tests__/exports.test.d.ts +0 -2
  136. package/dist/__tests__/exports.test.d.ts.map +0 -1
  137. package/dist/__tests__/exports.test.js +0 -30
  138. package/dist/__tests__/exports.test.js.map +0 -1
  139. package/dist/__tests__/fixtures/sigint-deploy-harness.d.ts +0 -25
  140. package/dist/__tests__/fixtures/sigint-deploy-harness.d.ts.map +0 -1
  141. package/dist/__tests__/fixtures/sigint-deploy-harness.js +0 -83
  142. package/dist/__tests__/fixtures/sigint-deploy-harness.js.map +0 -1
  143. package/dist/__tests__/fork/api.test.d.ts +0 -2
  144. package/dist/__tests__/fork/api.test.d.ts.map +0 -1
  145. package/dist/__tests__/fork/api.test.js +0 -115
  146. package/dist/__tests__/fork/api.test.js.map +0 -1
  147. package/dist/__tests__/fork/api.timeout.test.d.ts +0 -2
  148. package/dist/__tests__/fork/api.timeout.test.d.ts.map +0 -1
  149. package/dist/__tests__/fork/api.timeout.test.js +0 -98
  150. package/dist/__tests__/fork/api.timeout.test.js.map +0 -1
  151. package/dist/__tests__/harness/Harness.createLive.test.d.ts +0 -2
  152. package/dist/__tests__/harness/Harness.createLive.test.d.ts.map +0 -1
  153. package/dist/__tests__/harness/Harness.createLive.test.js +0 -53
  154. package/dist/__tests__/harness/Harness.createLive.test.js.map +0 -1
  155. package/dist/__tests__/harness/Harness.proxy.test.d.ts +0 -2
  156. package/dist/__tests__/harness/Harness.proxy.test.d.ts.map +0 -1
  157. package/dist/__tests__/harness/Harness.proxy.test.js +0 -89
  158. package/dist/__tests__/harness/Harness.proxy.test.js.map +0 -1
  159. package/dist/__tests__/harness/_fixture.d.ts +0 -54
  160. package/dist/__tests__/harness/_fixture.d.ts.map +0 -1
  161. package/dist/__tests__/harness/_fixture.js +0 -69
  162. package/dist/__tests__/harness/_fixture.js.map +0 -1
  163. package/dist/__tests__/harness/codeObject.deploy.test.d.ts +0 -2
  164. package/dist/__tests__/harness/codeObject.deploy.test.d.ts.map +0 -1
  165. package/dist/__tests__/harness/codeObject.deploy.test.js +0 -288
  166. package/dist/__tests__/harness/codeObject.deploy.test.js.map +0 -1
  167. package/dist/__tests__/harness/codeObject.upgrade.test.d.ts +0 -2
  168. package/dist/__tests__/harness/codeObject.upgrade.test.d.ts.map +0 -1
  169. package/dist/__tests__/harness/codeObject.upgrade.test.js +0 -138
  170. package/dist/__tests__/harness/codeObject.upgrade.test.js.map +0 -1
  171. package/dist/__tests__/harness/script.test.d.ts +0 -2
  172. package/dist/__tests__/harness/script.test.d.ts.map +0 -1
  173. package/dist/__tests__/harness/script.test.js +0 -219
  174. package/dist/__tests__/harness/script.test.js.map +0 -1
  175. package/dist/__tests__/harness/view.test.d.ts +0 -2
  176. package/dist/__tests__/harness/view.test.d.ts.map +0 -1
  177. package/dist/__tests__/harness/view.test.js +0 -92
  178. package/dist/__tests__/harness/view.test.js.map +0 -1
  179. package/dist/__tests__/runtime.test.d.ts +0 -2
  180. package/dist/__tests__/runtime.test.d.ts.map +0 -1
  181. package/dist/__tests__/runtime.test.js +0 -141
  182. package/dist/__tests__/runtime.test.js.map +0 -1
  183. package/dist/cli.d.ts.map +0 -1
  184. package/dist/cli.js.map +0 -1
  185. package/dist/commands/__tests__/compile.test.d.ts +0 -2
  186. package/dist/commands/__tests__/compile.test.d.ts.map +0 -1
  187. package/dist/commands/__tests__/compile.test.js +0 -351
  188. package/dist/commands/__tests__/compile.test.js.map +0 -1
  189. package/dist/commands/__tests__/compile.toml-mutation.test.d.ts +0 -2
  190. package/dist/commands/__tests__/compile.toml-mutation.test.d.ts.map +0 -1
  191. package/dist/commands/__tests__/compile.toml-mutation.test.js +0 -69
  192. package/dist/commands/__tests__/compile.toml-mutation.test.js.map +0 -1
  193. package/dist/commands/__tests__/init.test.d.ts +0 -2
  194. package/dist/commands/__tests__/init.test.d.ts.map +0 -1
  195. package/dist/commands/__tests__/init.test.js +0 -163
  196. package/dist/commands/__tests__/init.test.js.map +0 -1
  197. package/dist/commands/__tests__/run.test.d.ts +0 -2
  198. package/dist/commands/__tests__/run.test.d.ts.map +0 -1
  199. package/dist/commands/__tests__/run.test.js +0 -166
  200. package/dist/commands/__tests__/run.test.js.map +0 -1
  201. package/dist/commands/__tests__/test-move.test.d.ts +0 -2
  202. package/dist/commands/__tests__/test-move.test.d.ts.map +0 -1
  203. package/dist/commands/__tests__/test-move.test.js +0 -59
  204. package/dist/commands/__tests__/test-move.test.js.map +0 -1
  205. package/dist/commands/__tests__/test.test.d.ts +0 -2
  206. package/dist/commands/__tests__/test.test.d.ts.map +0 -1
  207. package/dist/commands/__tests__/test.test.js +0 -168
  208. package/dist/commands/__tests__/test.test.js.map +0 -1
  209. package/dist/commands/__tests__/update.test.d.ts +0 -2
  210. package/dist/commands/__tests__/update.test.d.ts.map +0 -1
  211. package/dist/commands/__tests__/update.test.js +0 -176
  212. package/dist/commands/__tests__/update.test.js.map +0 -1
  213. package/dist/commands/compile.d.ts.map +0 -1
  214. package/dist/commands/compile.js.map +0 -1
  215. package/dist/commands/fork/__tests__/create.test.d.ts +0 -2
  216. package/dist/commands/fork/__tests__/create.test.d.ts.map +0 -1
  217. package/dist/commands/fork/__tests__/create.test.js +0 -108
  218. package/dist/commands/fork/__tests__/create.test.js.map +0 -1
  219. package/dist/commands/fork/__tests__/fund.test.d.ts +0 -2
  220. package/dist/commands/fork/__tests__/fund.test.d.ts.map +0 -1
  221. package/dist/commands/fork/__tests__/fund.test.js +0 -72
  222. package/dist/commands/fork/__tests__/fund.test.js.map +0 -1
  223. package/dist/commands/fork/__tests__/list.test.d.ts +0 -2
  224. package/dist/commands/fork/__tests__/list.test.d.ts.map +0 -1
  225. package/dist/commands/fork/__tests__/list.test.js +0 -119
  226. package/dist/commands/fork/__tests__/list.test.js.map +0 -1
  227. package/dist/commands/fork/__tests__/serve.test.d.ts +0 -2
  228. package/dist/commands/fork/__tests__/serve.test.d.ts.map +0 -1
  229. package/dist/commands/fork/__tests__/serve.test.js +0 -97
  230. package/dist/commands/fork/__tests__/serve.test.js.map +0 -1
  231. package/dist/commands/fork/__tests__/view-resource.test.d.ts +0 -2
  232. package/dist/commands/fork/__tests__/view-resource.test.d.ts.map +0 -1
  233. package/dist/commands/fork/__tests__/view-resource.test.js +0 -77
  234. package/dist/commands/fork/__tests__/view-resource.test.js.map +0 -1
  235. package/dist/commands/fork/create.d.ts.map +0 -1
  236. package/dist/commands/fork/create.js.map +0 -1
  237. package/dist/commands/fork/fund.d.ts.map +0 -1
  238. package/dist/commands/fork/fund.js.map +0 -1
  239. package/dist/commands/fork/list.d.ts.map +0 -1
  240. package/dist/commands/fork/list.js.map +0 -1
  241. package/dist/commands/fork/serve.d.ts.map +0 -1
  242. package/dist/commands/fork/serve.js.map +0 -1
  243. package/dist/commands/fork/view-resource.d.ts.map +0 -1
  244. package/dist/commands/fork/view-resource.js.map +0 -1
  245. package/dist/commands/init.d.ts.map +0 -1
  246. package/dist/commands/init.js.map +0 -1
  247. package/dist/commands/run.d.ts.map +0 -1
  248. package/dist/commands/run.js.map +0 -1
  249. package/dist/commands/test-move.d.ts.map +0 -1
  250. package/dist/commands/test-move.js.map +0 -1
  251. package/dist/commands/test.d.ts.map +0 -1
  252. package/dist/commands/test.js.map +0 -1
  253. package/dist/commands/update.d.ts.map +0 -1
  254. package/dist/commands/update.js.map +0 -1
  255. package/dist/core/AccountManager.d.ts.map +0 -1
  256. package/dist/core/AccountManager.js.map +0 -1
  257. package/dist/core/Publisher.d.ts.map +0 -1
  258. package/dist/core/Publisher.js.map +0 -1
  259. package/dist/core/__tests__/AccountManager.global-state.test.d.ts +0 -2
  260. package/dist/core/__tests__/AccountManager.global-state.test.d.ts.map +0 -1
  261. package/dist/core/__tests__/AccountManager.global-state.test.js +0 -69
  262. package/dist/core/__tests__/AccountManager.global-state.test.js.map +0 -1
  263. package/dist/core/__tests__/AccountManager.test.d.ts +0 -2
  264. package/dist/core/__tests__/AccountManager.test.d.ts.map +0 -1
  265. package/dist/core/__tests__/AccountManager.test.js +0 -239
  266. package/dist/core/__tests__/AccountManager.test.js.map +0 -1
  267. package/dist/core/__tests__/config.test.d.ts +0 -2
  268. package/dist/core/__tests__/config.test.d.ts.map +0 -1
  269. package/dist/core/__tests__/config.test.js +0 -311
  270. package/dist/core/__tests__/config.test.js.map +0 -1
  271. package/dist/core/__tests__/deployments.test.d.ts +0 -2
  272. package/dist/core/__tests__/deployments.test.d.ts.map +0 -1
  273. package/dist/core/__tests__/deployments.test.js +0 -201
  274. package/dist/core/__tests__/deployments.test.js.map +0 -1
  275. package/dist/core/__tests__/movementProfile.test.d.ts +0 -2
  276. package/dist/core/__tests__/movementProfile.test.d.ts.map +0 -1
  277. package/dist/core/__tests__/movementProfile.test.js +0 -112
  278. package/dist/core/__tests__/movementProfile.test.js.map +0 -1
  279. package/dist/core/__tests__/shell.test.d.ts +0 -2
  280. package/dist/core/__tests__/shell.test.d.ts.map +0 -1
  281. package/dist/core/__tests__/shell.test.js +0 -107
  282. package/dist/core/__tests__/shell.test.js.map +0 -1
  283. package/dist/core/config.d.ts.map +0 -1
  284. package/dist/core/config.js.map +0 -1
  285. package/dist/core/contract.d.ts.map +0 -1
  286. package/dist/core/contract.js.map +0 -1
  287. package/dist/core/deployments.d.ts.map +0 -1
  288. package/dist/core/deployments.js.map +0 -1
  289. package/dist/core/movementProfile.d.ts.map +0 -1
  290. package/dist/core/movementProfile.js.map +0 -1
  291. package/dist/core/shell.d.ts.map +0 -1
  292. package/dist/core/shell.js.map +0 -1
  293. package/dist/errors.d.ts.map +0 -1
  294. package/dist/errors.js.map +0 -1
  295. package/dist/fork/__tests__/manager.test.d.ts +0 -2
  296. package/dist/fork/__tests__/manager.test.d.ts.map +0 -1
  297. package/dist/fork/__tests__/manager.test.js +0 -309
  298. package/dist/fork/__tests__/manager.test.js.map +0 -1
  299. package/dist/fork/__tests__/server.cors.test.d.ts +0 -2
  300. package/dist/fork/__tests__/server.cors.test.d.ts.map +0 -1
  301. package/dist/fork/__tests__/server.cors.test.js +0 -79
  302. package/dist/fork/__tests__/server.cors.test.js.map +0 -1
  303. package/dist/fork/__tests__/server.test.d.ts +0 -2
  304. package/dist/fork/__tests__/server.test.d.ts.map +0 -1
  305. package/dist/fork/__tests__/server.test.js +0 -54
  306. package/dist/fork/__tests__/server.test.js.map +0 -1
  307. package/dist/fork/__tests__/storage.test.d.ts +0 -2
  308. package/dist/fork/__tests__/storage.test.d.ts.map +0 -1
  309. package/dist/fork/__tests__/storage.test.js +0 -222
  310. package/dist/fork/__tests__/storage.test.js.map +0 -1
  311. package/dist/fork/__tests__/test.test.d.ts +0 -2
  312. package/dist/fork/__tests__/test.test.d.ts.map +0 -1
  313. package/dist/fork/__tests__/test.test.js +0 -81
  314. package/dist/fork/__tests__/test.test.js.map +0 -1
  315. package/dist/fork/api.d.ts.map +0 -1
  316. package/dist/fork/api.js.map +0 -1
  317. package/dist/fork/manager.d.ts.map +0 -1
  318. package/dist/fork/manager.js.map +0 -1
  319. package/dist/fork/server.d.ts.map +0 -1
  320. package/dist/fork/server.js.map +0 -1
  321. package/dist/fork/storage.d.ts.map +0 -1
  322. package/dist/fork/storage.js.map +0 -1
  323. package/dist/fork/test.d.ts.map +0 -1
  324. package/dist/fork/test.js.map +0 -1
  325. package/dist/harness/Harness.d.ts.map +0 -1
  326. package/dist/harness/Harness.js.map +0 -1
  327. package/dist/harness/codeObject.d.ts.map +0 -1
  328. package/dist/harness/codeObject.js.map +0 -1
  329. package/dist/harness/errors.d.ts.map +0 -1
  330. package/dist/harness/errors.js.map +0 -1
  331. package/dist/harness/index.d.ts.map +0 -1
  332. package/dist/harness/index.js.map +0 -1
  333. package/dist/harness/proxy.d.ts.map +0 -1
  334. package/dist/harness/proxy.js.map +0 -1
  335. package/dist/harness/script.d.ts.map +0 -1
  336. package/dist/harness/script.js.map +0 -1
  337. package/dist/harness/view.d.ts.map +0 -1
  338. package/dist/harness/view.js.map +0 -1
  339. package/dist/helpers/__tests__/semver-utils.test.d.ts +0 -2
  340. package/dist/helpers/__tests__/semver-utils.test.d.ts.map +0 -1
  341. package/dist/helpers/__tests__/semver-utils.test.js +0 -103
  342. package/dist/helpers/__tests__/semver-utils.test.js.map +0 -1
  343. package/dist/helpers/__tests__/setupLocalTesting.fork-network.test.d.ts +0 -2
  344. package/dist/helpers/__tests__/setupLocalTesting.fork-network.test.d.ts.map +0 -1
  345. package/dist/helpers/__tests__/setupLocalTesting.fork-network.test.js +0 -172
  346. package/dist/helpers/__tests__/setupLocalTesting.fork-network.test.js.map +0 -1
  347. package/dist/helpers/assertions.d.ts.map +0 -1
  348. package/dist/helpers/assertions.js.map +0 -1
  349. package/dist/helpers/banner.d.ts.map +0 -1
  350. package/dist/helpers/banner.js.map +0 -1
  351. package/dist/helpers/index.d.ts.map +0 -1
  352. package/dist/helpers/index.js.map +0 -1
  353. package/dist/helpers/move-tests.d.ts.map +0 -1
  354. package/dist/helpers/move-tests.js.map +0 -1
  355. package/dist/helpers/npm-registry.d.ts.map +0 -1
  356. package/dist/helpers/npm-registry.js.map +0 -1
  357. package/dist/helpers/semver-utils.d.ts.map +0 -1
  358. package/dist/helpers/semver-utils.js.map +0 -1
  359. package/dist/helpers/setup.d.ts.map +0 -1
  360. package/dist/helpers/setup.js.map +0 -1
  361. package/dist/helpers/setupLocalTesting.d.ts.map +0 -1
  362. package/dist/helpers/setupLocalTesting.js.map +0 -1
  363. package/dist/helpers/testFixtures.d.ts.map +0 -1
  364. package/dist/helpers/testFixtures.js.map +0 -1
  365. package/dist/helpers/version-check.d.ts.map +0 -1
  366. package/dist/helpers/version-check.js.map +0 -1
  367. package/dist/index.d.ts.map +0 -1
  368. package/dist/index.js.map +0 -1
  369. package/dist/node/LocalNodeManager.d.ts.map +0 -1
  370. package/dist/node/LocalNodeManager.js.map +0 -1
  371. package/dist/node/__tests__/LocalNodeManager.api-port.test.d.ts +0 -2
  372. package/dist/node/__tests__/LocalNodeManager.api-port.test.d.ts.map +0 -1
  373. package/dist/node/__tests__/LocalNodeManager.api-port.test.js +0 -55
  374. package/dist/node/__tests__/LocalNodeManager.api-port.test.js.map +0 -1
  375. package/dist/node/__tests__/LocalNodeManager.test.d.ts +0 -2
  376. package/dist/node/__tests__/LocalNodeManager.test.d.ts.map +0 -1
  377. package/dist/node/__tests__/LocalNodeManager.test.js +0 -449
  378. package/dist/node/__tests__/LocalNodeManager.test.js.map +0 -1
  379. package/dist/runtime.d.ts.map +0 -1
  380. package/dist/runtime.js.map +0 -1
  381. package/dist/types/config.d.ts.map +0 -1
  382. package/dist/types/config.js.map +0 -1
  383. package/dist/types/fork.d.ts.map +0 -1
  384. package/dist/types/fork.js.map +0 -1
  385. package/dist/types/harness.d.ts.map +0 -1
  386. package/dist/types/harness.js.map +0 -1
  387. package/dist/types/runtime.d.ts.map +0 -1
  388. package/dist/types/runtime.js.map +0 -1
  389. package/dist/ui/__tests__/colors.test.d.ts +0 -2
  390. package/dist/ui/__tests__/colors.test.d.ts.map +0 -1
  391. package/dist/ui/__tests__/colors.test.js +0 -127
  392. package/dist/ui/__tests__/colors.test.js.map +0 -1
  393. package/dist/ui/__tests__/logger.test.d.ts +0 -2
  394. package/dist/ui/__tests__/logger.test.d.ts.map +0 -1
  395. package/dist/ui/__tests__/logger.test.js +0 -75
  396. package/dist/ui/__tests__/logger.test.js.map +0 -1
  397. package/dist/ui/colors.d.ts.map +0 -1
  398. package/dist/ui/colors.js.map +0 -1
  399. package/dist/ui/formatters.d.ts.map +0 -1
  400. package/dist/ui/formatters.js.map +0 -1
  401. package/dist/ui/index.d.ts.map +0 -1
  402. package/dist/ui/index.js.map +0 -1
  403. package/dist/ui/logger.d.ts.map +0 -1
  404. package/dist/ui/logger.js.map +0 -1
  405. package/dist/ui/spinner.d.ts.map +0 -1
  406. package/dist/ui/spinner.js.map +0 -1
  407. package/dist/ui/symbols.d.ts.map +0 -1
  408. package/dist/ui/symbols.js.map +0 -1
  409. package/dist/ui/table.d.ts.map +0 -1
  410. package/dist/ui/table.js.map +0 -1
  411. package/dist/utils/__tests__/address.test.d.ts +0 -2
  412. package/dist/utils/__tests__/address.test.d.ts.map +0 -1
  413. package/dist/utils/__tests__/address.test.js +0 -70
  414. package/dist/utils/__tests__/address.test.js.map +0 -1
  415. package/dist/utils/__tests__/childProcessAdapter.maxBuffer.test.d.ts +0 -2
  416. package/dist/utils/__tests__/childProcessAdapter.maxBuffer.test.d.ts.map +0 -1
  417. package/dist/utils/__tests__/childProcessAdapter.maxBuffer.test.js +0 -43
  418. package/dist/utils/__tests__/childProcessAdapter.maxBuffer.test.js.map +0 -1
  419. package/dist/utils/__tests__/childProcessAdapter.test.d.ts +0 -2
  420. package/dist/utils/__tests__/childProcessAdapter.test.d.ts.map +0 -1
  421. package/dist/utils/__tests__/childProcessAdapter.test.js +0 -217
  422. package/dist/utils/__tests__/childProcessAdapter.test.js.map +0 -1
  423. package/dist/utils/__tests__/runCli.test.d.ts +0 -2
  424. package/dist/utils/__tests__/runCli.test.d.ts.map +0 -1
  425. package/dist/utils/__tests__/runCli.test.js +0 -187
  426. package/dist/utils/__tests__/runCli.test.js.map +0 -1
  427. package/dist/utils/address.d.ts.map +0 -1
  428. package/dist/utils/address.js.map +0 -1
  429. package/dist/utils/childProcessAdapter.d.ts.map +0 -1
  430. package/dist/utils/childProcessAdapter.js.map +0 -1
  431. package/dist/utils/parseCliOutput.d.ts.map +0 -1
  432. package/dist/utils/parseCliOutput.js.map +0 -1
  433. package/dist/utils/redact.d.ts.map +0 -1
  434. package/dist/utils/redact.js.map +0 -1
  435. package/dist/utils/runCli.d.ts.map +0 -1
  436. package/dist/utils/runCli.js.map +0 -1
  437. package/src/__tests__/deployContract.test.ts +0 -438
  438. package/src/__tests__/errors.test.ts +0 -84
  439. package/src/__tests__/exports.test.ts +0 -32
  440. package/src/__tests__/fixtures/sigint-deploy-harness.ts +0 -96
  441. package/src/__tests__/fork/api.test.ts +0 -148
  442. package/src/__tests__/fork/api.timeout.test.ts +0 -150
  443. package/src/__tests__/harness/Harness.createLive.test.ts +0 -57
  444. package/src/__tests__/harness/Harness.proxy.test.ts +0 -111
  445. package/src/__tests__/harness/_fixture.ts +0 -131
  446. package/src/__tests__/harness/codeObject.deploy.test.ts +0 -319
  447. package/src/__tests__/harness/codeObject.upgrade.test.ts +0 -156
  448. package/src/__tests__/harness/script.test.ts +0 -245
  449. package/src/__tests__/harness/view.test.ts +0 -104
  450. package/src/__tests__/runtime.test.ts +0 -182
  451. package/src/cli.ts +0 -164
  452. package/src/commands/__tests__/compile.test.ts +0 -407
  453. package/src/commands/__tests__/compile.toml-mutation.test.ts +0 -77
  454. package/src/commands/__tests__/init.test.ts +0 -210
  455. package/src/commands/__tests__/run.test.ts +0 -192
  456. package/src/commands/__tests__/test-move.test.ts +0 -81
  457. package/src/commands/__tests__/test.test.ts +0 -204
  458. package/src/commands/__tests__/update.test.ts +0 -223
  459. package/src/commands/compile.ts +0 -339
  460. package/src/commands/fork/__tests__/create.test.ts +0 -132
  461. package/src/commands/fork/__tests__/fund.test.ts +0 -104
  462. package/src/commands/fork/__tests__/list.test.ts +0 -139
  463. package/src/commands/fork/__tests__/serve.test.ts +0 -121
  464. package/src/commands/fork/__tests__/view-resource.test.ts +0 -101
  465. package/src/commands/fork/create.ts +0 -110
  466. package/src/commands/fork/fund.ts +0 -64
  467. package/src/commands/fork/list.ts +0 -98
  468. package/src/commands/fork/serve.ts +0 -80
  469. package/src/commands/fork/view-resource.ts +0 -51
  470. package/src/commands/init.ts +0 -264
  471. package/src/commands/run.ts +0 -125
  472. package/src/commands/test-move.ts +0 -27
  473. package/src/commands/test.ts +0 -255
  474. package/src/commands/update.ts +0 -201
  475. package/src/core/AccountManager.ts +0 -457
  476. package/src/core/Publisher.ts +0 -310
  477. package/src/core/__tests__/AccountManager.global-state.test.ts +0 -83
  478. package/src/core/__tests__/AccountManager.test.ts +0 -290
  479. package/src/core/__tests__/config.test.ts +0 -377
  480. package/src/core/__tests__/deployments.test.ts +0 -247
  481. package/src/core/__tests__/movementProfile.test.ts +0 -131
  482. package/src/core/__tests__/shell.test.ts +0 -138
  483. package/src/core/config.ts +0 -286
  484. package/src/core/contract.ts +0 -103
  485. package/src/core/deployments.ts +0 -155
  486. package/src/core/movementProfile.ts +0 -127
  487. package/src/core/shell.ts +0 -86
  488. package/src/errors.ts +0 -81
  489. package/src/fork/__tests__/manager.test.ts +0 -385
  490. package/src/fork/__tests__/server.cors.test.ts +0 -101
  491. package/src/fork/__tests__/server.test.ts +0 -65
  492. package/src/fork/__tests__/storage.test.ts +0 -281
  493. package/src/fork/__tests__/test.test.ts +0 -97
  494. package/src/fork/api.ts +0 -190
  495. package/src/fork/manager.ts +0 -343
  496. package/src/fork/server.ts +0 -380
  497. package/src/fork/storage.ts +0 -253
  498. package/src/fork/test.ts +0 -221
  499. package/src/harness/Harness.ts +0 -231
  500. package/src/harness/codeObject.ts +0 -381
  501. package/src/harness/errors.ts +0 -22
  502. package/src/harness/index.ts +0 -3
  503. package/src/harness/proxy.ts +0 -40
  504. package/src/harness/script.ts +0 -200
  505. package/src/harness/view.ts +0 -34
  506. package/src/helpers/__tests__/semver-utils.test.ts +0 -121
  507. package/src/helpers/__tests__/setupLocalTesting.fork-network.test.ts +0 -212
  508. package/src/helpers/assertions.ts +0 -29
  509. package/src/helpers/banner.ts +0 -63
  510. package/src/helpers/index.ts +0 -37
  511. package/src/helpers/move-tests.ts +0 -72
  512. package/src/helpers/npm-registry.ts +0 -72
  513. package/src/helpers/semver-utils.ts +0 -54
  514. package/src/helpers/setup.ts +0 -54
  515. package/src/helpers/setupLocalTesting.ts +0 -387
  516. package/src/helpers/testFixtures.ts +0 -210
  517. package/src/helpers/version-check.ts +0 -114
  518. package/src/index.ts +0 -30
  519. package/src/node/LocalNodeManager.ts +0 -383
  520. package/src/node/__tests__/LocalNodeManager.api-port.test.ts +0 -62
  521. package/src/node/__tests__/LocalNodeManager.test.ts +0 -579
  522. package/src/runtime.ts +0 -157
  523. package/src/templates/.env.example +0 -9
  524. package/src/templates/.mocharc.json +0 -8
  525. package/src/templates/.vscode/settings.json +0 -11
  526. package/src/templates/README.md +0 -146
  527. package/src/templates/gitignore +0 -22
  528. package/src/templates/move/Move.toml +0 -19
  529. package/src/templates/move/sources/Counter.move +0 -96
  530. package/src/templates/movehat.config.ts +0 -57
  531. package/src/templates/package.json +0 -27
  532. package/src/templates/scripts/deploy-counter.ts +0 -66
  533. package/src/templates/tests/Counter.test.ts +0 -113
  534. package/src/templates/tsconfig.json +0 -15
  535. package/src/templates/types/movehat.d.ts +0 -101
  536. package/src/types/config.ts +0 -83
  537. package/src/types/fork.ts +0 -47
  538. package/src/types/harness.ts +0 -182
  539. package/src/types/runtime.ts +0 -57
  540. package/src/ui/__tests__/colors.test.ts +0 -156
  541. package/src/ui/__tests__/logger.test.ts +0 -89
  542. package/src/ui/colors.ts +0 -144
  543. package/src/ui/formatters.ts +0 -246
  544. package/src/ui/index.ts +0 -62
  545. package/src/ui/logger.ts +0 -310
  546. package/src/ui/spinner.ts +0 -218
  547. package/src/ui/symbols.ts +0 -80
  548. package/src/ui/table.ts +0 -191
  549. package/src/utils/__tests__/address.test.ts +0 -93
  550. package/src/utils/__tests__/childProcessAdapter.maxBuffer.test.ts +0 -51
  551. package/src/utils/__tests__/childProcessAdapter.test.ts +0 -266
  552. package/src/utils/__tests__/runCli.test.ts +0 -240
  553. package/src/utils/address.ts +0 -52
  554. package/src/utils/childProcessAdapter.ts +0 -244
  555. package/src/utils/parseCliOutput.ts +0 -27
  556. package/src/utils/redact.ts +0 -24
  557. package/src/utils/runCli.ts +0 -64
@@ -1,25 +0,0 @@
1
- /**
2
- * Stand-alone child-process harness for the SIGINT-cleanup test in
3
- * `deployContract.test.ts`. Run via tsx by the parent test; never picked
4
- * up by vitest's test glob (default matches `*.{test,spec}.?(c|m)[jt]s`).
5
- *
6
- * Behavior:
7
- * 1. Build a fake ChildProcessAdapter whose `publish` step awaits a
8
- * long delay (3 seconds) — gives the parent test plenty of time to
9
- * send SIGINT mid-flight.
10
- * 2. Drive `Publisher.deploy()` against the fake adapter using a
11
- * synthetic MovehatConfig + Account read from env vars.
12
- * 3. Write the temp key file path to stdout as JSON
13
- * (`{"keyFile": "/tmp/movehat-key-<uuid>"}`) before the slow
14
- * publish so the parent test knows which file to look for after
15
- * SIGINT.
16
- * 4. If the deploy completes naturally (test failure case), exit 0.
17
- * 5. When SIGINT arrives, Publisher's signal handler runs synchronous
18
- * cleanup and `setImmediate(() => process.exit(130))`.
19
- *
20
- * The parent test does NOT import this file — it spawns it via
21
- * `child_process.spawn(node, [tsx, harness, ...])` so the harness runs
22
- * in its own process with its own signal-handler installation.
23
- */
24
- export {};
25
- //# sourceMappingURL=sigint-deploy-harness.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sigint-deploy-harness.d.ts","sourceRoot":"","sources":["../../../src/__tests__/fixtures/sigint-deploy-harness.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG"}
@@ -1,83 +0,0 @@
1
- /**
2
- * Stand-alone child-process harness for the SIGINT-cleanup test in
3
- * `deployContract.test.ts`. Run via tsx by the parent test; never picked
4
- * up by vitest's test glob (default matches `*.{test,spec}.?(c|m)[jt]s`).
5
- *
6
- * Behavior:
7
- * 1. Build a fake ChildProcessAdapter whose `publish` step awaits a
8
- * long delay (3 seconds) — gives the parent test plenty of time to
9
- * send SIGINT mid-flight.
10
- * 2. Drive `Publisher.deploy()` against the fake adapter using a
11
- * synthetic MovehatConfig + Account read from env vars.
12
- * 3. Write the temp key file path to stdout as JSON
13
- * (`{"keyFile": "/tmp/movehat-key-<uuid>"}`) before the slow
14
- * publish so the parent test knows which file to look for after
15
- * SIGINT.
16
- * 4. If the deploy completes naturally (test failure case), exit 0.
17
- * 5. When SIGINT arrives, Publisher's signal handler runs synchronous
18
- * cleanup and `setImmediate(() => process.exit(130))`.
19
- *
20
- * The parent test does NOT import this file — it spawns it via
21
- * `child_process.spawn(node, [tsx, harness, ...])` so the harness runs
22
- * in its own process with its own signal-handler installation.
23
- */
24
- import { Account, Ed25519PrivateKey } from "@aptos-labs/ts-sdk";
25
- import { Publisher } from "../../core/Publisher.js";
26
- // Deterministic test key — must satisfy the Movement TypeScript SDK's Ed25519 parser.
27
- // Same key the testnet auto-config uses in `core/config.ts:147-155`.
28
- const TEST_PRIVATE_KEY = "0x0000000000000000000000000000000000000000000000000000000000000001";
29
- async function main() {
30
- const account = Account.fromPrivateKey({
31
- privateKey: new Ed25519PrivateKey(TEST_PRIVATE_KEY),
32
- });
33
- const config = {
34
- network: "testnet",
35
- rpc: "https://testnet.invalid/v1",
36
- privateKey: TEST_PRIVATE_KEY,
37
- allAccounts: [TEST_PRIVATE_KEY],
38
- profile: "default",
39
- moveDir: "./move",
40
- account: account.accountAddress.toString(),
41
- namedAddresses: {},
42
- networkConfig: {
43
- url: "https://testnet.invalid/v1",
44
- chainId: "testnet",
45
- },
46
- };
47
- const slowPublishAdapter = {
48
- async run(input) {
49
- if (input.args[1] === "build") {
50
- return { exitCode: 0, stdout: "built", stderr: "" };
51
- }
52
- if (input.args[1] === "publish") {
53
- // Surface the temp key file path to the parent BEFORE blocking.
54
- const keyFileIdx = input.args.indexOf("--private-key-file");
55
- const keyFile = keyFileIdx >= 0 ? input.args[keyFileIdx + 1] : "";
56
- process.stdout.write(JSON.stringify({ keyFile }) + "\n");
57
- // Hold long enough for the parent to deliver SIGINT.
58
- await new Promise((r) => setTimeout(r, 3000));
59
- return {
60
- exitCode: 0,
61
- stdout: "Transaction hash: 0x" + "f".repeat(64),
62
- stderr: "",
63
- };
64
- }
65
- throw new Error(`unexpected subcommand: ${input.args[1]}`);
66
- },
67
- spawn() {
68
- throw new Error("spawn not used");
69
- },
70
- };
71
- const publisher = new Publisher({ adapter: slowPublishAdapter });
72
- await publisher.deploy({
73
- moduleName: "sigint_harness",
74
- config,
75
- account,
76
- packageDir: process.cwd(),
77
- });
78
- }
79
- main().catch((err) => {
80
- process.stderr.write(`harness error: ${err.message}\n`);
81
- process.exit(2);
82
- });
83
- //# sourceMappingURL=sigint-deploy-harness.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sigint-deploy-harness.js","sourceRoot":"","sources":["../../../src/__tests__/fixtures/sigint-deploy-harness.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAQpD,sFAAsF;AACtF,qEAAqE;AACrE,MAAM,gBAAgB,GACpB,oEAAoE,CAAC;AAEvE,KAAK,UAAU,IAAI;IACjB,MAAM,OAAO,GAAG,OAAO,CAAC,cAAc,CAAC;QACrC,UAAU,EAAE,IAAI,iBAAiB,CAAC,gBAAgB,CAAC;KACpD,CAAC,CAAC;IAEH,MAAM,MAAM,GAAkB;QAC5B,OAAO,EAAE,SAAS;QAClB,GAAG,EAAE,4BAA4B;QACjC,UAAU,EAAE,gBAAgB;QAC5B,WAAW,EAAE,CAAC,gBAAgB,CAAC;QAC/B,OAAO,EAAE,SAAS;QAClB,OAAO,EAAE,QAAQ;QACjB,OAAO,EAAE,OAAO,CAAC,cAAc,CAAC,QAAQ,EAAE;QAC1C,cAAc,EAAE,EAAE;QAClB,aAAa,EAAE;YACb,GAAG,EAAE,4BAA4B;YACjC,OAAO,EAAE,SAAS;SACnB;KACF,CAAC;IAEF,MAAM,kBAAkB,GAAwB;QAC9C,KAAK,CAAC,GAAG,CAAC,KAAe;YACvB,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;gBAC9B,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;YACtD,CAAC;YACD,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;gBAChC,gEAAgE;gBAChE,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;gBAC5D,MAAM,OAAO,GAAG,UAAU,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBAClE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;gBACzD,qDAAqD;gBACrD,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;gBAC9C,OAAO;oBACL,QAAQ,EAAE,CAAC;oBACX,MAAM,EAAE,sBAAsB,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;oBAC/C,MAAM,EAAE,EAAE;iBACX,CAAC;YACJ,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,0BAA0B,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC7D,CAAC;QACD,KAAK;YACH,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;QACpC,CAAC;KACF,CAAC;IAEF,MAAM,SAAS,GAAG,IAAI,SAAS,CAAC,EAAE,OAAO,EAAE,kBAAkB,EAAE,CAAC,CAAC;IACjE,MAAM,SAAS,CAAC,MAAM,CAAC;QACrB,UAAU,EAAE,gBAAgB;QAC5B,MAAM;QACN,OAAO;QACP,UAAU,EAAE,OAAO,CAAC,GAAG,EAAE;KAC1B,CAAC,CAAC;AACL,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;IACnB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAmB,GAAa,CAAC,OAAO,IAAI,CAAC,CAAC;IACnE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=api.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"api.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/fork/api.test.ts"],"names":[],"mappings":""}
@@ -1,115 +0,0 @@
1
- import { afterEach, beforeEach, describe, expect, it, vi } from "vitest";
2
- import { EventEmitter } from "node:events";
3
- /**
4
- * Tests for `MovementApiClient` Authorization header injection —
5
- * verifies the apiKey threading from `Harness.createFork`.
6
- *
7
- * Strategy: `vi.mock` `node:https` and `node:http` so the test
8
- * captures the request options passed to `client.get(url, options, cb)`
9
- * without making real network requests. Two assertions:
10
- *
11
- * 1. When the client is constructed with an apiKey, every `get`
12
- * call carries `Authorization: Bearer <apiKey>` in
13
- * `options.headers`.
14
- * 2. When constructed without an apiKey, no Authorization header
15
- * is added (back-compat for unauthenticated public endpoints).
16
- */
17
- const httpsGet = vi.fn();
18
- const httpGet = vi.fn();
19
- vi.mock("https", () => ({
20
- default: { get: httpsGet },
21
- get: httpsGet,
22
- }));
23
- vi.mock("http", () => ({
24
- default: { get: httpGet },
25
- get: httpGet,
26
- }));
27
- /**
28
- * Build a fake `IncomingMessage`-like emitter that immediately emits
29
- * a valid JSON body and ends. The MovementApiClient.get callback
30
- * consumes the response via `data` / `end` events.
31
- */
32
- function makeFakeResponse(body, statusCode = 200) {
33
- const res = new EventEmitter();
34
- res.statusCode = statusCode;
35
- // Use setImmediate so the listener attaches before the events fire.
36
- setImmediate(() => {
37
- res.emit("data", body);
38
- res.emit("end");
39
- });
40
- return res;
41
- }
42
- /**
43
- * Capture the options arg from `client.get(url, options, callback)`
44
- * and immediately resolve with a fake successful ledger-info response.
45
- * Returns the captured options for assertion.
46
- */
47
- function setupGetCapture() {
48
- const captured = {};
49
- const handler = (url, options, cb) => {
50
- captured.url = url;
51
- // Distinguish (url, callback) vs (url, options, callback) overloads.
52
- let callback;
53
- if (typeof options === "function") {
54
- callback = options;
55
- }
56
- else {
57
- captured.options = options;
58
- callback = cb;
59
- }
60
- const fakeReq = new EventEmitter();
61
- fakeReq.end = () => { };
62
- // F3: api.ts now installs a setTimeout on the request and may call
63
- // destroy() on overflow / timeout. Stub both so this happy-path
64
- // capture mock still satisfies the new contract.
65
- fakeReq.setTimeout = () => { };
66
- fakeReq.destroy = () => { };
67
- if (callback) {
68
- const body = JSON.stringify({
69
- chain_id: 250,
70
- ledger_version: "1",
71
- ledger_timestamp: "0",
72
- epoch: "0",
73
- block_height: "0",
74
- });
75
- callback(makeFakeResponse(body));
76
- }
77
- return fakeReq;
78
- };
79
- httpsGet.mockImplementation(handler);
80
- httpGet.mockImplementation(handler);
81
- return { captured };
82
- }
83
- describe("MovementApiClient — Authorization header (apiKey wiring)", () => {
84
- beforeEach(() => {
85
- httpsGet.mockReset();
86
- httpGet.mockReset();
87
- });
88
- afterEach(() => {
89
- vi.restoreAllMocks();
90
- });
91
- it("injects 'Authorization: Bearer <apiKey>' when constructed with an apiKey", async () => {
92
- const { captured } = setupGetCapture();
93
- const { MovementApiClient } = await import("../../fork/api.js");
94
- const client = new MovementApiClient("https://testnet.example.com/v1", "secret-key-123");
95
- await client.getLedgerInfo();
96
- expect(captured.url).toBe("https://testnet.example.com/v1/");
97
- expect(captured.options).toBeDefined();
98
- expect(captured.options?.headers).toEqual({
99
- Authorization: "Bearer secret-key-123",
100
- });
101
- expect(httpsGet).toHaveBeenCalledTimes(1);
102
- });
103
- it("omits the Authorization header when constructed without an apiKey (back-compat)", async () => {
104
- const { captured } = setupGetCapture();
105
- const { MovementApiClient } = await import("../../fork/api.js");
106
- const client = new MovementApiClient("https://testnet.example.com/v1");
107
- await client.getLedgerInfo();
108
- expect(captured.url).toBe("https://testnet.example.com/v1/");
109
- if (captured.options !== undefined) {
110
- expect(captured.options.headers).toBeUndefined();
111
- }
112
- expect(httpsGet).toHaveBeenCalledTimes(1);
113
- });
114
- });
115
- //# sourceMappingURL=api.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"api.test.js","sourceRoot":"","sources":["../../../src/__tests__/fork/api.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=api.timeout.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"api.timeout.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/fork/api.timeout.test.ts"],"names":[],"mappings":""}
@@ -1,98 +0,0 @@
1
- import { afterEach, beforeEach, describe, expect, it, vi } from "vitest";
2
- import { EventEmitter } from "node:events";
3
- const httpsGet = vi.fn();
4
- const httpGet = vi.fn();
5
- vi.mock("https", () => ({ default: { get: httpsGet }, get: httpsGet }));
6
- vi.mock("http", () => ({ default: { get: httpGet }, get: httpGet }));
7
- function makeFakeReq() {
8
- const req = new EventEmitter();
9
- req.destroyed = false;
10
- let timeoutHandle;
11
- req.end = () => { };
12
- req.destroy = (err) => {
13
- req.destroyed = true;
14
- if (timeoutHandle)
15
- clearTimeout(timeoutHandle);
16
- setImmediate(() => req.emit("error", err ?? new Error("destroyed")));
17
- };
18
- req.setTimeout = (ms, cb) => {
19
- timeoutHandle = setTimeout(() => {
20
- req.emit("timeout");
21
- if (cb)
22
- cb();
23
- }, ms);
24
- // Don't keep the event loop alive — Node sets this itself but the
25
- // mock has no native socket to inherit from.
26
- timeoutHandle.unref?.();
27
- };
28
- return req;
29
- }
30
- function makeUnresolvableResponse() {
31
- const res = new EventEmitter();
32
- res.statusCode = 200;
33
- return res;
34
- }
35
- function makeStreamingResponse(bytesPerChunk, chunks) {
36
- const res = new EventEmitter();
37
- res.statusCode = 200;
38
- setImmediate(() => {
39
- let i = 0;
40
- const pump = () => {
41
- if (i >= chunks) {
42
- res.emit("end");
43
- return;
44
- }
45
- res.emit("data", Buffer.alloc(bytesPerChunk, 0x61));
46
- i++;
47
- setImmediate(pump);
48
- };
49
- pump();
50
- });
51
- return res;
52
- }
53
- describe("F3 — MovementApiClient timeouts and byte cap", () => {
54
- beforeEach(() => {
55
- httpsGet.mockReset();
56
- httpGet.mockReset();
57
- });
58
- afterEach(() => {
59
- vi.restoreAllMocks();
60
- });
61
- it("rejects with a timeout error when the upstream never responds", async () => {
62
- const fakeReq = makeFakeReq();
63
- httpGet.mockImplementation((_url, options, cb) => {
64
- const callback = typeof options === "function"
65
- ? options
66
- : cb;
67
- if (callback)
68
- callback(makeUnresolvableResponse());
69
- return fakeReq;
70
- });
71
- const { MovementApiClient } = await import("../../fork/api.js");
72
- const client = new MovementApiClient("http://hung.example/v1", undefined, {
73
- timeoutMs: 25,
74
- maxBytes: 1024 * 1024,
75
- });
76
- await expect(client.getLedgerInfo()).rejects.toThrow(/timed out|timeout/i);
77
- expect(fakeReq.destroyed).toBe(true);
78
- });
79
- it("rejects and destroys the request when the response exceeds maxBytes", async () => {
80
- const fakeReq = makeFakeReq();
81
- httpGet.mockImplementation((_url, options, cb) => {
82
- const callback = typeof options === "function"
83
- ? options
84
- : cb;
85
- if (callback)
86
- callback(makeStreamingResponse(2048, 100));
87
- return fakeReq;
88
- });
89
- const { MovementApiClient } = await import("../../fork/api.js");
90
- const client = new MovementApiClient("http://big.example/v1", undefined, {
91
- timeoutMs: 5000,
92
- maxBytes: 4096,
93
- });
94
- await expect(client.getLedgerInfo()).rejects.toThrow(/maxBytes|too large|exceeded/i);
95
- expect(fakeReq.destroyed).toBe(true);
96
- });
97
- });
98
- //# sourceMappingURL=api.timeout.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"api.timeout.test.js","sourceRoot":"","sources":["../../../src/__tests__/fork/api.timeout.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=Harness.createLive.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Harness.createLive.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/harness/Harness.createLive.test.ts"],"names":[],"mappings":""}
@@ -1,53 +0,0 @@
1
- import { afterEach, beforeEach, describe, expect, it } from "vitest";
2
- import { Harness } from "../../harness/index.js";
3
- import { setupHarnessTestFixture } from "./_fixture.js";
4
- describe("Harness.createLive", () => {
5
- let fixture;
6
- beforeEach(() => {
7
- fixture = setupHarnessTestFixture({
8
- extraNetworks: {
9
- custom: {
10
- url: "https://custom.example.com/v1",
11
- chainId: "custom",
12
- accounts: ["0x" + "a".repeat(64)],
13
- },
14
- },
15
- });
16
- });
17
- afterEach(() => {
18
- fixture.teardown();
19
- });
20
- it("returns a Harness bound to the requested network with mode='live'", async () => {
21
- const harness = await Harness.createLive("testnet");
22
- try {
23
- expect(harness.mode).toBe("live");
24
- expect(harness.runtime).toBeDefined();
25
- expect(harness.runtime.network.name).toBe("testnet");
26
- expect(harness.runtime.network.rpc).toContain("testnet.movementnetwork.xyz");
27
- // createLive does not own a local node or fork server.
28
- expect(harness.localNode).toBeUndefined();
29
- expect(harness.forkServer).toBeUndefined();
30
- expect(harness.forkManager).toBeUndefined();
31
- }
32
- finally {
33
- await harness.cleanup();
34
- }
35
- });
36
- it("can switch networks via the first argument", async () => {
37
- const harness = await Harness.createLive("custom");
38
- try {
39
- expect(harness.runtime.network.name).toBe("custom");
40
- expect(harness.runtime.network.rpc).toContain("custom.example.com");
41
- }
42
- finally {
43
- await harness.cleanup();
44
- }
45
- });
46
- it("cleanup() is a no-op for createLive (no owned services) but still poisons", async () => {
47
- const harness = await Harness.createLive("testnet");
48
- expect(harness.poisoned).toBe(false);
49
- await harness.cleanup();
50
- expect(harness.poisoned).toBe(true);
51
- });
52
- });
53
- //# sourceMappingURL=Harness.createLive.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Harness.createLive.test.js","sourceRoot":"","sources":["../../../src/__tests__/harness/Harness.createLive.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAErE,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,uBAAuB,EAA2B,MAAM,eAAe,CAAC;AAEjF,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;IAClC,IAAI,OAA2B,CAAC;IAEhC,UAAU,CAAC,GAAG,EAAE;QACd,OAAO,GAAG,uBAAuB,CAAC;YAChC,aAAa,EAAE;gBACb,MAAM,EAAE;oBACN,GAAG,EAAE,+BAA+B;oBACpC,OAAO,EAAE,QAAQ;oBACjB,QAAQ,EAAE,CAAC,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;iBAClC;aACF;SACF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACb,OAAO,CAAC,QAAQ,EAAE,CAAC;IACrB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mEAAmE,EAAE,KAAK,IAAI,EAAE;QACjF,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QACpD,IAAI,CAAC;YACH,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAClC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC;YACtC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACrD,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,6BAA6B,CAAC,CAAC;YAC7E,uDAAuD;YACvD,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,aAAa,EAAE,CAAC;YAC1C,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,aAAa,EAAE,CAAC;YAC3C,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,aAAa,EAAE,CAAC;QAC9C,CAAC;gBAAS,CAAC;YACT,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;QAC1B,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4CAA4C,EAAE,KAAK,IAAI,EAAE;QAC1D,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QACnD,IAAI,CAAC;YACH,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACpD,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;QACtE,CAAC;gBAAS,CAAC;YACT,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;QAC1B,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2EAA2E,EAAE,KAAK,IAAI,EAAE;QACzF,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QACpD,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrC,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;QACxB,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=Harness.proxy.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Harness.proxy.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/harness/Harness.proxy.test.ts"],"names":[],"mappings":""}
@@ -1,89 +0,0 @@
1
- import { afterEach, beforeEach, describe, expect, it } from "vitest";
2
- import { Harness, HarnessDisposedError } from "../../harness/index.js";
3
- import { setupHarnessTestFixture } from "./_fixture.js";
4
- /**
5
- * Proxy poisoning is the load-bearing safety guarantee of the Harness:
6
- * once cleaned up, any further deploy / view / script / upgrade call
7
- * must throw `HarnessDisposedError` synchronously on property access —
8
- * not after the awaited method body. These tests lock that contract.
9
- *
10
- * Uses `Harness.createLive(network)` because it does not spawn a real
11
- * Movement node — `initRuntime` only constructs the SDK client (no RPC
12
- * round-trip) from the fixture config. `createLocal` / `createFork`
13
- * runtime tests live in the integration suite.
14
- */
15
- describe("Harness — proxy poisoning", () => {
16
- let fixture;
17
- beforeEach(() => {
18
- fixture = setupHarnessTestFixture();
19
- });
20
- afterEach(() => {
21
- fixture.teardown();
22
- });
23
- it("cleanup() flips poisoned to true", async () => {
24
- const harness = await Harness.createLive("testnet");
25
- expect(harness.poisoned).toBe(false);
26
- await harness.cleanup();
27
- expect(harness.poisoned).toBe(true);
28
- });
29
- it("cleanup() is idempotent", async () => {
30
- const harness = await Harness.createLive("testnet");
31
- await harness.cleanup();
32
- // Second call must not throw and must leave the harness poisoned.
33
- await expect(harness.cleanup()).resolves.toBeUndefined();
34
- expect(harness.poisoned).toBe(true);
35
- });
36
- it("post-cleanup, deployCodeObject throws HarnessDisposedError synchronously on property access", async () => {
37
- const harness = await Harness.createLive("testnet");
38
- await harness.cleanup();
39
- // Property access itself throws — the call site never gets a Promise back.
40
- // The args ({moduleName: "x"}) typecheck but never execute (the get trap
41
- // fires before the method body runs).
42
- expect(() => harness.deployCodeObject({ moduleName: "x" })).toThrow(HarnessDisposedError);
43
- });
44
- it("post-cleanup, upgradeCodeObject / runViewFunction / runMoveScript all throw HarnessDisposedError synchronously", async () => {
45
- const harness = await Harness.createLive("testnet");
46
- await harness.cleanup();
47
- expect(() => harness.upgradeCodeObject({ moduleName: "x", objectAddress: "0x1" })).toThrow(HarnessDisposedError);
48
- expect(() => harness.runViewFunction({ function: "0x1::m::f" })).toThrow(HarnessDisposedError);
49
- expect(() => harness.runMoveScript({ scriptPath: "irrelevant.move" })).toThrow(HarnessDisposedError);
50
- });
51
- it("HarnessDisposedError carries the offending method name", async () => {
52
- const harness = await Harness.createLive("testnet");
53
- await harness.cleanup();
54
- let captured;
55
- try {
56
- harness.deployCodeObject({ moduleName: "x" });
57
- }
58
- catch (err) {
59
- captured = err;
60
- }
61
- expect(captured).toBeInstanceOf(HarnessDisposedError);
62
- expect(captured.methodName).toBe("deployCodeObject");
63
- });
64
- it("post-cleanup, metadata accessors (mode, poisoned, runtime) still work", async () => {
65
- const harness = await Harness.createLive("testnet");
66
- await harness.cleanup();
67
- // None of these should throw — only the 4 poisoned methods do.
68
- expect(harness.mode).toBe("live");
69
- expect(harness.poisoned).toBe(true);
70
- expect(harness.runtime).toBeDefined();
71
- });
72
- // Dedicated suites exist for each of the four methods
73
- // (codeObject.deploy/upgrade.test.ts, view.test.ts, script.test.ts).
74
- it("await harness.someAsyncMethod() pattern: post-cleanup throw happens before await", async () => {
75
- const harness = await Harness.createLive("testnet");
76
- await harness.cleanup();
77
- // The error is synchronous (property access), but the typical caller
78
- // shape uses await. Confirm that pattern surfaces the error too.
79
- let captured;
80
- try {
81
- await harness.deployCodeObject({ moduleName: "x" });
82
- }
83
- catch (err) {
84
- captured = err;
85
- }
86
- expect(captured).toBeInstanceOf(HarnessDisposedError);
87
- });
88
- });
89
- //# sourceMappingURL=Harness.proxy.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Harness.proxy.test.js","sourceRoot":"","sources":["../../../src/__tests__/harness/Harness.proxy.test.ts"],"names":[],"mappings":"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"}
@@ -1,54 +0,0 @@
1
- /**
2
- * Shared test fixture for Harness tests.
3
- *
4
- * Six test files in `__tests__/harness/` all needed the same setup
5
- * boilerplate (~30 LoC each) before this helper landed: tmpdir for
6
- * cwd, write a `movehat.config.js`, write a minimal Move package
7
- * (`move/Move.toml` + `move/sources/dummy.move`), chdir, reset the
8
- * mtime-based config cache, manage HOME for tests that exercise
9
- * `~/.aptos/config.yaml` profile management. Extracted as a single
10
- * helper to eliminate the drift surface across siblings.
11
- *
12
- * The defaults match the most common test shape: a single `testnet`
13
- * network and no HOME management. Tests that need more (a `custom`
14
- * network for switching, an isolated HOME for profile tests) opt in
15
- * via the options.
16
- *
17
- * @internal — not exported from `src/index.ts`. Test-only.
18
- */
19
- /**
20
- * Additional networks to merge into the fixture's `movehat.config.js`.
21
- * Keyed by network name. Each network needs `url` + `chainId` at
22
- * minimum; pass `accounts` when the test exercises a code path that
23
- * requires explicit account configuration (e.g. mainnet-like security
24
- * checks in `resolveNetworkConfig`).
25
- */
26
- export interface ExtraNetwork {
27
- url: string;
28
- chainId: string;
29
- accounts?: string[];
30
- }
31
- export interface HarnessTestFixtureOptions {
32
- /** Additional networks merged on top of the default `testnet` entry. */
33
- extraNetworks?: Record<string, ExtraNetwork>;
34
- /**
35
- * When `true`, manage a separate `process.env.HOME` directory for
36
- * the test. Used by tests that exercise `~/.aptos/config.yaml`
37
- * profile writes (codeObject.* and script.* test suites).
38
- */
39
- withTmpHome?: boolean;
40
- }
41
- export interface HarnessTestFixture {
42
- /** Fresh per-test cwd. The test is chdir'd here. */
43
- tmpCwd: string;
44
- /** Fresh per-test HOME, only set when `withTmpHome: true`. */
45
- tmpHome?: string;
46
- /** Restore cwd + HOME, remove the tmp dirs, and reset config cache. */
47
- teardown: () => void;
48
- }
49
- /**
50
- * Build a fresh per-test fixture. Call from `beforeEach`, capture the
51
- * returned object, and call `fixture.teardown()` in `afterEach`.
52
- */
53
- export declare function setupHarnessTestFixture(options?: HarnessTestFixtureOptions): HarnessTestFixture;
54
- //# sourceMappingURL=_fixture.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"_fixture.d.ts","sourceRoot":"","sources":["../../../src/__tests__/harness/_fixture.ts"],"names":[],"mappings":"AAKA;;;;;;;;;;;;;;;;;GAiBG;AAEH;;;;;;GAMG;AACH,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB;AAED,MAAM,WAAW,yBAAyB;IACxC,wEAAwE;IACxE,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAE7C;;;;OAIG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,kBAAkB;IACjC,oDAAoD;IACpD,MAAM,EAAE,MAAM,CAAC;IACf,8DAA8D;IAC9D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,uEAAuE;IACvE,QAAQ,EAAE,MAAM,IAAI,CAAC;CACtB;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,GAAE,yBAA8B,GACtC,kBAAkB,CAkEpB"}