@hubspot/cli 8.0.10-experimental.5 → 8.0.10-experimental.7

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 (368) hide show
  1. package/commands/getStarted.js +1 -1
  2. package/lang/en.js +1 -1
  3. package/lib/app/migrate.js +10 -5
  4. package/lib/getStartedV2Actions.js +1 -1
  5. package/lib/projects/components.js +3 -2
  6. package/lib/projects/create/v2.js +1 -1
  7. package/lib/ui/SpinniesManager.js +2 -0
  8. package/package.json +6 -2
  9. package/api/__tests__/migrate.test.d.ts +0 -1
  10. package/api/__tests__/migrate.test.js +0 -199
  11. package/commands/__tests__/account.test.d.ts +0 -1
  12. package/commands/__tests__/account.test.js +0 -69
  13. package/commands/__tests__/auth.test.d.ts +0 -1
  14. package/commands/__tests__/auth.test.js +0 -43
  15. package/commands/__tests__/cms.test.d.ts +0 -1
  16. package/commands/__tests__/cms.test.js +0 -87
  17. package/commands/__tests__/config.test.d.ts +0 -1
  18. package/commands/__tests__/config.test.js +0 -44
  19. package/commands/__tests__/customObject.test.d.ts +0 -1
  20. package/commands/__tests__/customObject.test.js +0 -68
  21. package/commands/__tests__/doctor.test.d.ts +0 -1
  22. package/commands/__tests__/doctor.test.js +0 -132
  23. package/commands/__tests__/feedback.test.d.ts +0 -1
  24. package/commands/__tests__/feedback.test.js +0 -24
  25. package/commands/__tests__/filemanager.test.d.ts +0 -1
  26. package/commands/__tests__/filemanager.test.js +0 -45
  27. package/commands/__tests__/getStarted.test.d.ts +0 -1
  28. package/commands/__tests__/getStarted.test.js +0 -173
  29. package/commands/__tests__/hubdb.test.d.ts +0 -1
  30. package/commands/__tests__/hubdb.test.js +0 -50
  31. package/commands/__tests__/init.test.d.ts +0 -1
  32. package/commands/__tests__/init.test.js +0 -42
  33. package/commands/__tests__/mcp.test.d.ts +0 -1
  34. package/commands/__tests__/mcp.test.js +0 -46
  35. package/commands/__tests__/open.test.d.ts +0 -1
  36. package/commands/__tests__/open.test.js +0 -58
  37. package/commands/__tests__/project.test.d.ts +0 -1
  38. package/commands/__tests__/project.test.js +0 -125
  39. package/commands/__tests__/sandbox.test.d.ts +0 -1
  40. package/commands/__tests__/sandbox.test.js +0 -44
  41. package/commands/__tests__/secret.test.d.ts +0 -1
  42. package/commands/__tests__/secret.test.js +0 -49
  43. package/commands/__tests__/testAccount.test.d.ts +0 -1
  44. package/commands/__tests__/testAccount.test.js +0 -57
  45. package/commands/__tests__/upgrade.test.d.ts +0 -1
  46. package/commands/__tests__/upgrade.test.js +0 -309
  47. package/commands/account/__tests__/auth.test.d.ts +0 -1
  48. package/commands/account/__tests__/auth.test.js +0 -206
  49. package/commands/account/__tests__/clean.test.d.ts +0 -1
  50. package/commands/account/__tests__/clean.test.js +0 -28
  51. package/commands/account/__tests__/createOverride.test.d.ts +0 -1
  52. package/commands/account/__tests__/createOverride.test.js +0 -32
  53. package/commands/account/__tests__/info.test.d.ts +0 -1
  54. package/commands/account/__tests__/info.test.js +0 -28
  55. package/commands/account/__tests__/list.test.d.ts +0 -1
  56. package/commands/account/__tests__/list.test.js +0 -153
  57. package/commands/account/__tests__/remove.test.d.ts +0 -1
  58. package/commands/account/__tests__/remove.test.js +0 -36
  59. package/commands/account/__tests__/removeOverride.d.ts +0 -1
  60. package/commands/account/__tests__/removeOverride.js +0 -25
  61. package/commands/account/__tests__/rename.test.d.ts +0 -1
  62. package/commands/account/__tests__/rename.test.js +0 -82
  63. package/commands/account/__tests__/use.test.d.ts +0 -1
  64. package/commands/account/__tests__/use.test.js +0 -170
  65. package/commands/app/__tests__/migrate.test.d.ts +0 -1
  66. package/commands/app/__tests__/migrate.test.js +0 -111
  67. package/commands/app/secret/__tests__/add.test.d.ts +0 -1
  68. package/commands/app/secret/__tests__/add.test.js +0 -140
  69. package/commands/app/secret/__tests__/delete.test.d.ts +0 -1
  70. package/commands/app/secret/__tests__/delete.test.js +0 -28
  71. package/commands/app/secret/__tests__/list.test.d.ts +0 -1
  72. package/commands/app/secret/__tests__/list.test.js +0 -25
  73. package/commands/app/secret/__tests__/update.test.d.ts +0 -1
  74. package/commands/app/secret/__tests__/update.test.js +0 -28
  75. package/commands/cms/__tests__/delete.test.d.ts +0 -1
  76. package/commands/cms/__tests__/delete.test.js +0 -39
  77. package/commands/cms/__tests__/fetch.test.d.ts +0 -1
  78. package/commands/cms/__tests__/fetch.test.js +0 -156
  79. package/commands/cms/__tests__/function.test.d.ts +0 -1
  80. package/commands/cms/__tests__/function.test.js +0 -50
  81. package/commands/cms/__tests__/lint.test.d.ts +0 -1
  82. package/commands/cms/__tests__/lint.test.js +0 -33
  83. package/commands/cms/__tests__/list.test.d.ts +0 -1
  84. package/commands/cms/__tests__/list.test.js +0 -42
  85. package/commands/cms/__tests__/module.test.d.ts +0 -1
  86. package/commands/cms/__tests__/module.test.js +0 -45
  87. package/commands/cms/__tests__/mv.test.d.ts +0 -1
  88. package/commands/cms/__tests__/mv.test.js +0 -46
  89. package/commands/cms/__tests__/theme.test.d.ts +0 -1
  90. package/commands/cms/__tests__/theme.test.js +0 -54
  91. package/commands/cms/__tests__/upload.test.d.ts +0 -1
  92. package/commands/cms/__tests__/upload.test.js +0 -312
  93. package/commands/cms/__tests__/watch.test.d.ts +0 -1
  94. package/commands/cms/__tests__/watch.test.js +0 -204
  95. package/commands/cms/function/__tests__/logs.test.d.ts +0 -1
  96. package/commands/cms/function/__tests__/logs.test.js +0 -70
  97. package/commands/cms/theme/__tests__/generate-selectors.test.d.ts +0 -1
  98. package/commands/cms/theme/__tests__/generate-selectors.test.js +0 -28
  99. package/commands/cms/theme/__tests__/marketplace-validate.test.d.ts +0 -1
  100. package/commands/cms/theme/__tests__/marketplace-validate.test.js +0 -36
  101. package/commands/cms/theme/__tests__/preview.test.d.ts +0 -1
  102. package/commands/cms/theme/__tests__/preview.test.js +0 -54
  103. package/commands/customObject/__tests__/create.test.d.ts +0 -1
  104. package/commands/customObject/__tests__/create.test.js +0 -40
  105. package/commands/customObject/__tests__/createSchema.test.d.ts +0 -1
  106. package/commands/customObject/__tests__/createSchema.test.js +0 -28
  107. package/commands/customObject/__tests__/deleteSchema.test.d.ts +0 -1
  108. package/commands/customObject/__tests__/deleteSchema.test.js +0 -42
  109. package/commands/customObject/__tests__/fetch-all-schemas.test.d.ts +0 -1
  110. package/commands/customObject/__tests__/fetch-all-schemas.test.js +0 -41
  111. package/commands/customObject/__tests__/fetchSchema.test.d.ts +0 -1
  112. package/commands/customObject/__tests__/fetchSchema.test.js +0 -45
  113. package/commands/customObject/__tests__/listSchemas.test.d.ts +0 -1
  114. package/commands/customObject/__tests__/listSchemas.test.js +0 -29
  115. package/commands/customObject/__tests__/updateSchema.test.d.ts +0 -1
  116. package/commands/customObject/__tests__/updateSchema.test.js +0 -40
  117. package/commands/filemanager/__tests__/fetch.test.d.ts +0 -1
  118. package/commands/filemanager/__tests__/fetch.test.js +0 -32
  119. package/commands/filemanager/__tests__/upload.test.d.ts +0 -1
  120. package/commands/filemanager/__tests__/upload.test.js +0 -191
  121. package/commands/hubdb/__tests__/clear.test.d.ts +0 -1
  122. package/commands/hubdb/__tests__/clear.test.js +0 -28
  123. package/commands/hubdb/__tests__/create.test.d.ts +0 -1
  124. package/commands/hubdb/__tests__/create.test.js +0 -28
  125. package/commands/hubdb/__tests__/delete.test.d.ts +0 -1
  126. package/commands/hubdb/__tests__/delete.test.js +0 -28
  127. package/commands/hubdb/__tests__/fetch.test.d.ts +0 -1
  128. package/commands/hubdb/__tests__/fetch.test.js +0 -28
  129. package/commands/hubdb/__tests__/list.test.d.ts +0 -1
  130. package/commands/hubdb/__tests__/list.test.js +0 -88
  131. package/commands/mcp/__tests__/setup.test.d.ts +0 -1
  132. package/commands/mcp/__tests__/setup.test.js +0 -26
  133. package/commands/mcp/__tests__/start.test.d.ts +0 -1
  134. package/commands/mcp/__tests__/start.test.js +0 -144
  135. package/commands/project/__tests__/add.test.d.ts +0 -1
  136. package/commands/project/__tests__/add.test.js +0 -107
  137. package/commands/project/__tests__/create.test.d.ts +0 -1
  138. package/commands/project/__tests__/create.test.js +0 -97
  139. package/commands/project/__tests__/deploy.test.d.ts +0 -1
  140. package/commands/project/__tests__/deploy.test.js +0 -307
  141. package/commands/project/__tests__/dev.test.d.ts +0 -1
  142. package/commands/project/__tests__/dev.test.js +0 -273
  143. package/commands/project/__tests__/devUnifiedFlow.test.d.ts +0 -1
  144. package/commands/project/__tests__/devUnifiedFlow.test.js +0 -434
  145. package/commands/project/__tests__/download.test.d.ts +0 -1
  146. package/commands/project/__tests__/download.test.js +0 -39
  147. package/commands/project/__tests__/installDeps.test.d.ts +0 -1
  148. package/commands/project/__tests__/installDeps.test.js +0 -140
  149. package/commands/project/__tests__/lint.test.d.ts +0 -1
  150. package/commands/project/__tests__/lint.test.js +0 -704
  151. package/commands/project/__tests__/list.test.d.ts +0 -1
  152. package/commands/project/__tests__/list.test.js +0 -31
  153. package/commands/project/__tests__/listBuilds.test.d.ts +0 -1
  154. package/commands/project/__tests__/listBuilds.test.js +0 -38
  155. package/commands/project/__tests__/logs.test.d.ts +0 -1
  156. package/commands/project/__tests__/logs.test.js +0 -202
  157. package/commands/project/__tests__/migrate.test.d.ts +0 -1
  158. package/commands/project/__tests__/migrate.test.js +0 -106
  159. package/commands/project/__tests__/open.test.d.ts +0 -1
  160. package/commands/project/__tests__/open.test.js +0 -39
  161. package/commands/project/__tests__/profile.test.d.ts +0 -1
  162. package/commands/project/__tests__/profile.test.js +0 -42
  163. package/commands/project/__tests__/updateDeps.test.d.ts +0 -1
  164. package/commands/project/__tests__/updateDeps.test.js +0 -140
  165. package/commands/project/__tests__/upload.test.d.ts +0 -1
  166. package/commands/project/__tests__/upload.test.js +0 -234
  167. package/commands/project/__tests__/validate.test.d.ts +0 -1
  168. package/commands/project/__tests__/validate.test.js +0 -381
  169. package/commands/project/__tests__/watch.test.d.ts +0 -1
  170. package/commands/project/__tests__/watch.test.js +0 -35
  171. package/commands/sandbox/__tests__/create.test.d.ts +0 -1
  172. package/commands/sandbox/__tests__/create.test.js +0 -198
  173. package/commands/sandbox/__tests__/delete.test.d.ts +0 -1
  174. package/commands/sandbox/__tests__/delete.test.js +0 -31
  175. package/commands/secret/__tests__/addSecret.test.d.ts +0 -1
  176. package/commands/secret/__tests__/addSecret.test.js +0 -162
  177. package/commands/secret/__tests__/deleteSecret.test.d.ts +0 -1
  178. package/commands/secret/__tests__/deleteSecret.test.js +0 -41
  179. package/commands/secret/__tests__/listSecret.test.d.ts +0 -1
  180. package/commands/secret/__tests__/listSecret.test.js +0 -29
  181. package/commands/secret/__tests__/updateSecret.test.d.ts +0 -1
  182. package/commands/secret/__tests__/updateSecret.test.js +0 -29
  183. package/commands/testAccount/__tests__/create.test.d.ts +0 -1
  184. package/commands/testAccount/__tests__/create.test.js +0 -106
  185. package/commands/testAccount/__tests__/createConfig.test.d.ts +0 -1
  186. package/commands/testAccount/__tests__/createConfig.test.js +0 -32
  187. package/commands/testAccount/__tests__/delete.test.d.ts +0 -1
  188. package/commands/testAccount/__tests__/delete.test.js +0 -29
  189. package/commands/testAccount/__tests__/importData.test.d.ts +0 -1
  190. package/commands/testAccount/__tests__/importData.test.js +0 -92
  191. package/lib/__tests__/CLIWebSocketServer.test.d.ts +0 -1
  192. package/lib/__tests__/CLIWebSocketServer.test.js +0 -252
  193. package/lib/__tests__/accountAuth.test.d.ts +0 -1
  194. package/lib/__tests__/accountAuth.test.js +0 -258
  195. package/lib/__tests__/accountTypes.test.d.ts +0 -1
  196. package/lib/__tests__/accountTypes.test.js +0 -98
  197. package/lib/__tests__/buildAccount.test.d.ts +0 -1
  198. package/lib/__tests__/buildAccount.test.js +0 -211
  199. package/lib/__tests__/cliUpgradeUtils.test.d.ts +0 -1
  200. package/lib/__tests__/cliUpgradeUtils.test.js +0 -131
  201. package/lib/__tests__/commandSuggestion.test.d.ts +0 -1
  202. package/lib/__tests__/commandSuggestion.test.js +0 -121
  203. package/lib/__tests__/commonOpts.test.d.ts +0 -1
  204. package/lib/__tests__/commonOpts.test.js +0 -80
  205. package/lib/__tests__/dependencyManagement.test.d.ts +0 -1
  206. package/lib/__tests__/dependencyManagement.test.js +0 -1067
  207. package/lib/__tests__/developerTestAccounts.test.d.ts +0 -1
  208. package/lib/__tests__/developerTestAccounts.test.js +0 -156
  209. package/lib/__tests__/hasFeature.test.d.ts +0 -1
  210. package/lib/__tests__/hasFeature.test.js +0 -167
  211. package/lib/__tests__/http.test.d.ts +0 -1
  212. package/lib/__tests__/http.test.js +0 -40
  213. package/lib/__tests__/importData.test.d.ts +0 -1
  214. package/lib/__tests__/importData.test.js +0 -98
  215. package/lib/__tests__/npmCli.test.d.ts +0 -1
  216. package/lib/__tests__/npmCli.test.js +0 -84
  217. package/lib/__tests__/oauth.test.d.ts +0 -1
  218. package/lib/__tests__/oauth.test.js +0 -109
  219. package/lib/__tests__/parsing.test.d.ts +0 -1
  220. package/lib/__tests__/parsing.test.js +0 -34
  221. package/lib/__tests__/polling.test.d.ts +0 -1
  222. package/lib/__tests__/polling.test.js +0 -76
  223. package/lib/__tests__/process.test.d.ts +0 -1
  224. package/lib/__tests__/process.test.js +0 -89
  225. package/lib/__tests__/sandboxes.test.d.ts +0 -1
  226. package/lib/__tests__/sandboxes.test.js +0 -128
  227. package/lib/__tests__/serverlessLogs.test.d.ts +0 -1
  228. package/lib/__tests__/serverlessLogs.test.js +0 -163
  229. package/lib/__tests__/usageTracking.test.d.ts +0 -1
  230. package/lib/__tests__/usageTracking.test.js +0 -197
  231. package/lib/__tests__/validation.test.d.ts +0 -1
  232. package/lib/__tests__/validation.test.js +0 -143
  233. package/lib/__tests__/yargsUtils.test.d.ts +0 -1
  234. package/lib/__tests__/yargsUtils.test.js +0 -124
  235. package/lib/app/__tests__/migrate.test.d.ts +0 -1
  236. package/lib/app/__tests__/migrate.test.js +0 -638
  237. package/lib/doctor/__tests__/Diagnosis.test.d.ts +0 -1
  238. package/lib/doctor/__tests__/Diagnosis.test.js +0 -84
  239. package/lib/doctor/__tests__/DiagnosticInfoBuilder.test.d.ts +0 -1
  240. package/lib/doctor/__tests__/DiagnosticInfoBuilder.test.js +0 -177
  241. package/lib/doctor/__tests__/Doctor.test.d.ts +0 -1
  242. package/lib/doctor/__tests__/Doctor.test.js +0 -560
  243. package/lib/errorHandlers/__tests__/index.test.d.ts +0 -1
  244. package/lib/errorHandlers/__tests__/index.test.js +0 -278
  245. package/lib/mcp/__tests__/setup.test.d.ts +0 -1
  246. package/lib/mcp/__tests__/setup.test.js +0 -523
  247. package/lib/middleware/__tests__/commandTargetingUtils.test.d.ts +0 -1
  248. package/lib/middleware/__tests__/commandTargetingUtils.test.js +0 -99
  249. package/lib/middleware/__tests__/configMiddleware.test.d.ts +0 -1
  250. package/lib/middleware/__tests__/configMiddleware.test.js +0 -118
  251. package/lib/middleware/__tests__/gitMiddleware.test.d.ts +0 -1
  252. package/lib/middleware/__tests__/gitMiddleware.test.js +0 -43
  253. package/lib/middleware/__tests__/requestMiddleware.test.d.ts +0 -1
  254. package/lib/middleware/__tests__/requestMiddleware.test.js +0 -15
  255. package/lib/middleware/__tests__/usageTrackingMiddleware.test.d.ts +0 -1
  256. package/lib/middleware/__tests__/usageTrackingMiddleware.test.js +0 -44
  257. package/lib/middleware/__tests__/yargsChecksMiddleware.test.d.ts +0 -1
  258. package/lib/middleware/__tests__/yargsChecksMiddleware.test.js +0 -39
  259. package/lib/projects/__tests__/AppDevModeInterface.test.d.ts +0 -1
  260. package/lib/projects/__tests__/AppDevModeInterface.test.js +0 -541
  261. package/lib/projects/__tests__/DevServerManager.test.d.ts +0 -1
  262. package/lib/projects/__tests__/DevServerManager.test.js +0 -185
  263. package/lib/projects/__tests__/DevSessionManager.test.d.ts +0 -1
  264. package/lib/projects/__tests__/DevSessionManager.test.js +0 -250
  265. package/lib/projects/__tests__/LocalDevProcess.test.d.ts +0 -1
  266. package/lib/projects/__tests__/LocalDevProcess.test.js +0 -481
  267. package/lib/projects/__tests__/LocalDevWebsocketServer.test.d.ts +0 -1
  268. package/lib/projects/__tests__/LocalDevWebsocketServer.test.js +0 -231
  269. package/lib/projects/__tests__/ProjectLogsManager.test.d.ts +0 -1
  270. package/lib/projects/__tests__/ProjectLogsManager.test.js +0 -302
  271. package/lib/projects/__tests__/UIExtensionsDevModeInterface.test.d.ts +0 -1
  272. package/lib/projects/__tests__/UIExtensionsDevModeInterface.test.js +0 -160
  273. package/lib/projects/__tests__/components.test.d.ts +0 -1
  274. package/lib/projects/__tests__/components.test.js +0 -440
  275. package/lib/projects/__tests__/deploy.test.d.ts +0 -1
  276. package/lib/projects/__tests__/deploy.test.js +0 -231
  277. package/lib/projects/__tests__/localDevProjectHelpers.test.d.ts +0 -1
  278. package/lib/projects/__tests__/localDevProjectHelpers.test.js +0 -120
  279. package/lib/projects/__tests__/platformVersion.test.d.ts +0 -1
  280. package/lib/projects/__tests__/platformVersion.test.js +0 -63
  281. package/lib/projects/__tests__/pollProjectBuildAndDeploy.test.d.ts +0 -1
  282. package/lib/projects/__tests__/pollProjectBuildAndDeploy.test.js +0 -328
  283. package/lib/projects/__tests__/projectProfiles.test.d.ts +0 -1
  284. package/lib/projects/__tests__/projectProfiles.test.js +0 -441
  285. package/lib/projects/__tests__/projects.test.d.ts +0 -1
  286. package/lib/projects/__tests__/projects.test.js +0 -58
  287. package/lib/projects/__tests__/structure.test.d.ts +0 -1
  288. package/lib/projects/__tests__/structure.test.js +0 -210
  289. package/lib/projects/__tests__/uieLinting.test.d.ts +0 -1
  290. package/lib/projects/__tests__/uieLinting.test.js +0 -631
  291. package/lib/projects/__tests__/upload.test.d.ts +0 -1
  292. package/lib/projects/__tests__/upload.test.js +0 -183
  293. package/lib/projects/add/__tests__/legacyAddComponent.test.d.ts +0 -1
  294. package/lib/projects/add/__tests__/legacyAddComponent.test.js +0 -245
  295. package/lib/projects/add/__tests__/v2AddComponent.test.d.ts +0 -1
  296. package/lib/projects/add/__tests__/v2AddComponent.test.js +0 -343
  297. package/lib/projects/create/__tests__/legacy.test.d.ts +0 -1
  298. package/lib/projects/create/__tests__/legacy.test.js +0 -72
  299. package/lib/projects/create/__tests__/v2.test.d.ts +0 -1
  300. package/lib/projects/create/__tests__/v2.test.js +0 -257
  301. package/lib/prompts/__tests__/createDeveloperTestAccountConfigPrompt.test.d.ts +0 -1
  302. package/lib/prompts/__tests__/createDeveloperTestAccountConfigPrompt.test.js +0 -157
  303. package/lib/prompts/__tests__/createFunctionPrompt.test.d.ts +0 -1
  304. package/lib/prompts/__tests__/createFunctionPrompt.test.js +0 -129
  305. package/lib/prompts/__tests__/createModulePrompt.test.d.ts +0 -1
  306. package/lib/prompts/__tests__/createModulePrompt.test.js +0 -187
  307. package/lib/prompts/__tests__/createTemplatePrompt.test.d.ts +0 -1
  308. package/lib/prompts/__tests__/createTemplatePrompt.test.js +0 -102
  309. package/lib/prompts/__tests__/downloadProjectPrompt.test.d.ts +0 -1
  310. package/lib/prompts/__tests__/downloadProjectPrompt.test.js +0 -31
  311. package/lib/prompts/__tests__/projectAddPrompt.test.d.ts +0 -1
  312. package/lib/prompts/__tests__/projectAddPrompt.test.js +0 -143
  313. package/lib/prompts/__tests__/projectsLogsPrompt.test.d.ts +0 -1
  314. package/lib/prompts/__tests__/projectsLogsPrompt.test.js +0 -37
  315. package/lib/prompts/__tests__/selectProjectTemplatePrompt.test.d.ts +0 -1
  316. package/lib/prompts/__tests__/selectProjectTemplatePrompt.test.js +0 -160
  317. package/lib/theme/__tests__/migrate.test.d.ts +0 -1
  318. package/lib/theme/__tests__/migrate.test.js +0 -247
  319. package/lib/ui/__tests__/SpinniesManager.test.d.ts +0 -1
  320. package/lib/ui/__tests__/SpinniesManager.test.js +0 -488
  321. package/lib/ui/__tests__/removeAnsiCodes.test.d.ts +0 -1
  322. package/lib/ui/__tests__/removeAnsiCodes.test.js +0 -84
  323. package/mcp-server/tools/cms/__tests__/HsCreateFunctionTool.test.d.ts +0 -1
  324. package/mcp-server/tools/cms/__tests__/HsCreateFunctionTool.test.js +0 -254
  325. package/mcp-server/tools/cms/__tests__/HsCreateModuleTool.test.d.ts +0 -1
  326. package/mcp-server/tools/cms/__tests__/HsCreateModuleTool.test.js +0 -227
  327. package/mcp-server/tools/cms/__tests__/HsCreateTemplateTool.test.d.ts +0 -1
  328. package/mcp-server/tools/cms/__tests__/HsCreateTemplateTool.test.js +0 -208
  329. package/mcp-server/tools/cms/__tests__/HsFunctionLogsTool.test.d.ts +0 -1
  330. package/mcp-server/tools/cms/__tests__/HsFunctionLogsTool.test.js +0 -186
  331. package/mcp-server/tools/cms/__tests__/HsListFunctionsTool.test.d.ts +0 -1
  332. package/mcp-server/tools/cms/__tests__/HsListFunctionsTool.test.js +0 -124
  333. package/mcp-server/tools/cms/__tests__/HsListTool.test.d.ts +0 -1
  334. package/mcp-server/tools/cms/__tests__/HsListTool.test.js +0 -124
  335. package/mcp-server/tools/project/__tests__/AddFeatureToProjectTool.test.d.ts +0 -1
  336. package/mcp-server/tools/project/__tests__/AddFeatureToProjectTool.test.js +0 -157
  337. package/mcp-server/tools/project/__tests__/CreateProjectTool.test.d.ts +0 -1
  338. package/mcp-server/tools/project/__tests__/CreateProjectTool.test.js +0 -131
  339. package/mcp-server/tools/project/__tests__/CreateTestAccountTool.test.d.ts +0 -1
  340. package/mcp-server/tools/project/__tests__/CreateTestAccountTool.test.js +0 -461
  341. package/mcp-server/tools/project/__tests__/DeployProjectTool.test.d.ts +0 -1
  342. package/mcp-server/tools/project/__tests__/DeployProjectTool.test.js +0 -125
  343. package/mcp-server/tools/project/__tests__/DocFetchTool.test.d.ts +0 -1
  344. package/mcp-server/tools/project/__tests__/DocFetchTool.test.js +0 -125
  345. package/mcp-server/tools/project/__tests__/DocsSearchTool.test.d.ts +0 -1
  346. package/mcp-server/tools/project/__tests__/DocsSearchTool.test.js +0 -210
  347. package/mcp-server/tools/project/__tests__/GetApiUsagePatternsByAppIdTool.test.d.ts +0 -1
  348. package/mcp-server/tools/project/__tests__/GetApiUsagePatternsByAppIdTool.test.js +0 -146
  349. package/mcp-server/tools/project/__tests__/GetApplicationInfoTool.test.d.ts +0 -1
  350. package/mcp-server/tools/project/__tests__/GetApplicationInfoTool.test.js +0 -124
  351. package/mcp-server/tools/project/__tests__/GetBuildLogsTool.test.d.ts +0 -1
  352. package/mcp-server/tools/project/__tests__/GetBuildLogsTool.test.js +0 -307
  353. package/mcp-server/tools/project/__tests__/GetBuildStatusTool.test.d.ts +0 -1
  354. package/mcp-server/tools/project/__tests__/GetBuildStatusTool.test.js +0 -242
  355. package/mcp-server/tools/project/__tests__/GetConfigValuesTool.test.d.ts +0 -1
  356. package/mcp-server/tools/project/__tests__/GetConfigValuesTool.test.js +0 -209
  357. package/mcp-server/tools/project/__tests__/GuidedWalkthroughTool.test.d.ts +0 -1
  358. package/mcp-server/tools/project/__tests__/GuidedWalkthroughTool.test.js +0 -158
  359. package/mcp-server/tools/project/__tests__/UploadProjectTools.test.d.ts +0 -1
  360. package/mcp-server/tools/project/__tests__/UploadProjectTools.test.js +0 -187
  361. package/mcp-server/tools/project/__tests__/ValidateProjectTool.test.d.ts +0 -1
  362. package/mcp-server/tools/project/__tests__/ValidateProjectTool.test.js +0 -118
  363. package/mcp-server/utils/__tests__/command.test.d.ts +0 -1
  364. package/mcp-server/utils/__tests__/command.test.js +0 -275
  365. package/mcp-server/utils/__tests__/content.test.d.ts +0 -1
  366. package/mcp-server/utils/__tests__/content.test.js +0 -164
  367. package/mcp-server/utils/__tests__/feedbackTracking.test.d.ts +0 -1
  368. package/mcp-server/utils/__tests__/feedbackTracking.test.js +0 -69
@@ -1,132 +0,0 @@
1
- import { EXIT_CODES } from '../../lib/enums/exitCodes.js';
2
- import yargs from 'yargs';
3
- import doctorCommand from '../doctor.js';
4
- import { trackCommandUsage } from '../../lib/usageTracking.js';
5
- import { Doctor } from '../../lib/doctor/Doctor.js';
6
- import { uiLogger } from '../../lib/ui/logger.js';
7
- import fs from 'fs';
8
- import { getCwd as __getCwd } from '@hubspot/local-dev-lib/path';
9
- vi.mock('../../lib/doctor/Doctor');
10
- vi.mock('@hubspot/local-dev-lib/path');
11
- vi.mock('fs');
12
- // @ts-expect-error Doesn't match the actual signature because then the linter complains about unused variables
13
- const DoctorMock = Doctor;
14
- const mockedFs = vi.mocked(fs);
15
- const getCwd = __getCwd;
16
- const optionSpy = vi
17
- .spyOn(yargs, 'option')
18
- .mockReturnValue(yargs);
19
- const date = new Date('2022-02-22');
20
- vi.useFakeTimers().setSystemTime(date);
21
- describe('doctor', () => {
22
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
23
- let processExitSpy;
24
- const accountId = 123456;
25
- beforeEach(() => {
26
- // @ts-expect-error Doesn't match the actual signature because then the linter complains about unused variables
27
- processExitSpy = vi.spyOn(process, 'exit').mockImplementation(() => { });
28
- });
29
- describe('command', () => {
30
- it('should have the proper command name', () => {
31
- expect(doctorCommand.command).toEqual('doctor');
32
- });
33
- });
34
- describe('describe', () => {
35
- it('should have a description', () => {
36
- expect(doctorCommand.describe).toEqual('Retrieve diagnostic information about your local HubSpot configurations.');
37
- });
38
- });
39
- describe('builder', () => {
40
- it('should apply the correct options', () => {
41
- doctorCommand.builder(yargs);
42
- expect(optionSpy).toHaveBeenCalledWith('output-dir', {
43
- describe: 'Directory to save a detailed diagnosis JSON file in',
44
- type: 'string',
45
- });
46
- });
47
- });
48
- describe('handler', () => {
49
- let diagnosis;
50
- beforeEach(() => {
51
- diagnosis = 'Yooooooooooooooo';
52
- DoctorMock.mockImplementation(() => {
53
- return {
54
- diagnose: vi.fn().mockResolvedValue({ diagnosis }),
55
- accountId,
56
- };
57
- });
58
- });
59
- it('should track the command usage', async () => {
60
- await doctorCommand.handler({});
61
- expect(trackCommandUsage).toHaveBeenCalledTimes(1);
62
- expect(trackCommandUsage).toHaveBeenCalledWith('doctor', undefined, accountId);
63
- });
64
- it('should log the diagnosis if it is defined', async () => {
65
- await doctorCommand.handler({});
66
- expect(uiLogger.log).toHaveBeenCalledTimes(1);
67
- expect(uiLogger.log).toHaveBeenCalledWith(diagnosis);
68
- expect(processExitSpy).toHaveBeenCalledTimes(1);
69
- expect(processExitSpy).toHaveBeenCalledWith(EXIT_CODES.SUCCESS);
70
- });
71
- it('should log an error if the diagnosis is undefined', async () => {
72
- DoctorMock.mockImplementationOnce(() => {
73
- return {
74
- diagnose: vi.fn().mockResolvedValue(undefined),
75
- accountId,
76
- };
77
- });
78
- await doctorCommand.handler({});
79
- expect(uiLogger.error).toHaveBeenCalledTimes(1);
80
- expect(uiLogger.error).toHaveBeenCalledWith('Error generating diagnosis');
81
- expect(processExitSpy).toHaveBeenCalledTimes(1);
82
- expect(processExitSpy).toHaveBeenCalledWith(EXIT_CODES.ERROR);
83
- });
84
- it('should write the output to a file if output-dir is defined', async () => {
85
- mockedFs.writeFileSync.mockImplementationOnce(() => { });
86
- const expectedOutputFile = `/foo/hubspot-doctor-${date.toISOString()}.json`;
87
- await doctorCommand.handler({
88
- outputDir: '/foo',
89
- });
90
- expect(uiLogger.log).not.toHaveBeenCalled();
91
- expect(uiLogger.error).not.toHaveBeenCalled();
92
- expect(mockedFs.writeFileSync).toHaveBeenCalledTimes(1);
93
- expect(mockedFs.writeFileSync).toHaveBeenCalledWith(expectedOutputFile, expect.stringContaining(diagnosis));
94
- expect(uiLogger.success).toHaveBeenCalledTimes(1);
95
- expect(uiLogger.success).toHaveBeenCalledWith(expect.stringMatching(/Output written to /));
96
- expect(processExitSpy).toHaveBeenCalledTimes(1);
97
- expect(processExitSpy).toHaveBeenCalledWith(EXIT_CODES.SUCCESS);
98
- });
99
- it('should handle absolute paths', async () => {
100
- mockedFs.writeFileSync.mockImplementationOnce(() => { });
101
- const cwd = '/some/path/to';
102
- getCwd.mockImplementationOnce(() => cwd);
103
- const expectedOutputFile = `${cwd}/foo/hubspot-doctor-${date.toISOString()}.json`;
104
- await doctorCommand.handler({
105
- outputDir: './foo',
106
- });
107
- expect(uiLogger.log).not.toHaveBeenCalled();
108
- expect(uiLogger.error).not.toHaveBeenCalled();
109
- expect(mockedFs.writeFileSync).toHaveBeenCalledTimes(1);
110
- expect(mockedFs.writeFileSync).toHaveBeenCalledWith(expectedOutputFile, expect.stringContaining(diagnosis));
111
- expect(uiLogger.success).toHaveBeenCalledTimes(1);
112
- expect(uiLogger.success).toHaveBeenCalledWith(expect.stringMatching(/Output written to /));
113
- expect(processExitSpy).toHaveBeenCalledTimes(1);
114
- expect(processExitSpy).toHaveBeenCalledWith(EXIT_CODES.SUCCESS);
115
- });
116
- it('should log an error message when writing the output fails', async () => {
117
- const errorMessage = 'Something bad happened';
118
- mockedFs.writeFileSync.mockImplementationOnce(() => {
119
- throw new Error(errorMessage);
120
- });
121
- await doctorCommand.handler({
122
- outputDir: '/foo',
123
- });
124
- expect(uiLogger.error).toHaveBeenCalledTimes(1);
125
- expect(uiLogger.error).toHaveBeenCalledWith(expect.stringMatching(/Unable to write output to/));
126
- expect(mockedFs.writeFileSync).toHaveBeenCalledTimes(1);
127
- expect(mockedFs.writeFileSync).toHaveBeenCalledWith(`/foo/hubspot-doctor-${date.toISOString()}.json`, expect.stringContaining(diagnosis));
128
- expect(processExitSpy).toHaveBeenCalledTimes(1);
129
- expect(processExitSpy).toHaveBeenCalledWith(EXIT_CODES.ERROR);
130
- });
131
- });
132
- });
@@ -1 +0,0 @@
1
- export {};
@@ -1,24 +0,0 @@
1
- import yargs from 'yargs';
2
- import * as commonOpts from '../../lib/commonOpts.js';
3
- import feedbackCommand from '../feedback.js';
4
- vi.mock('yargs');
5
- vi.mock('../../lib/commonOpts');
6
- describe('commands/feedback', () => {
7
- describe('command', () => {
8
- it('should have the correct command structure', () => {
9
- expect(feedbackCommand.command).toEqual('feedback');
10
- });
11
- });
12
- describe('describe', () => {
13
- it('should provide a description', () => {
14
- expect(feedbackCommand.describe).toBeDefined();
15
- });
16
- });
17
- describe('builder', () => {
18
- it('should support the correct options', () => {
19
- feedbackCommand.builder(yargs);
20
- expect(commonOpts.addGlobalOptions).toHaveBeenCalledTimes(1);
21
- expect(commonOpts.addGlobalOptions).toHaveBeenCalledWith(yargs);
22
- });
23
- });
24
- });
@@ -1 +0,0 @@
1
- export {};
@@ -1,45 +0,0 @@
1
- import yargs from 'yargs';
2
- import fetch from '../filemanager/fetch.js';
3
- import upload from '../filemanager/upload.js';
4
- import fileManagerCommands from '../filemanager.js';
5
- vi.mock('../filemanager/fetch');
6
- vi.mock('../filemanager/upload');
7
- vi.mock('../../lib/commonOpts');
8
- const commandSpy = vi
9
- .spyOn(yargs, 'command')
10
- .mockReturnValue(yargs);
11
- const demandCommandSpy = vi
12
- .spyOn(yargs, 'demandCommand')
13
- .mockReturnValue(yargs);
14
- describe('commands/filemanager', () => {
15
- describe('command', () => {
16
- it('should have the correct command structure', () => {
17
- expect(fileManagerCommands.command).toEqual('filemanager');
18
- });
19
- });
20
- describe('describe', () => {
21
- it('should provide a description', () => {
22
- expect(fileManagerCommands.describe).toBeDefined();
23
- });
24
- });
25
- describe('builder', () => {
26
- beforeEach(() => {
27
- commandSpy.mockClear();
28
- demandCommandSpy.mockClear();
29
- });
30
- const subcommands = [fetch, upload];
31
- it('should demand the command takes one positional argument', () => {
32
- fileManagerCommands.builder(yargs);
33
- expect(demandCommandSpy).toHaveBeenCalledTimes(1);
34
- expect(demandCommandSpy).toHaveBeenCalledWith(1, '');
35
- });
36
- it('should add the correct number of sub commands', () => {
37
- fileManagerCommands.builder(yargs);
38
- expect(commandSpy).toHaveBeenCalledTimes(subcommands.length);
39
- });
40
- it.each(subcommands)('should attach the %s subcommand', module => {
41
- fileManagerCommands.builder(yargs);
42
- expect(commandSpy).toHaveBeenCalledWith(module);
43
- });
44
- });
45
- });
@@ -1 +0,0 @@
1
- export {};
@@ -1,173 +0,0 @@
1
- import getStartedCommand from '../getStarted.js';
2
- import { trackCommandUsage } from '../../lib/usageTracking.js';
3
- import { promptUser } from '../../lib/prompts/promptUtils.js';
4
- import { getConfigAccountById } from '@hubspot/local-dev-lib/config';
5
- import { projectNameAndDestPrompt } from '../../lib/prompts/projectNameAndDestPrompt.js';
6
- import { cloneGithubRepo } from '@hubspot/local-dev-lib/github';
7
- import { getProjectConfig, writeProjectConfig, } from '../../lib/projects/config.js';
8
- import { getProjectPackageJsonLocations, installPackages, } from '../../lib/dependencyManagement.js';
9
- import { GET_STARTED_OPTIONS } from '../../lib/constants.js';
10
- import { EXIT_CODES } from '../../lib/enums/exitCodes.js';
11
- import open from 'open';
12
- import { renderInteractive } from '../../ui/render.js';
13
- import { getGetStartedFlow } from '../../ui/components/getStarted/GetStartedFlow.js';
14
- vi.mock('../../lib/prompts/promptUtils');
15
- vi.mock('../../lib/prompts/projectNameAndDestPrompt');
16
- vi.mock('../../lib/projects/config');
17
- vi.mock('../../lib/errorHandlers');
18
- vi.mock('@hubspot/local-dev-lib/github');
19
- vi.mock('../../lib/dependencyManagement');
20
- vi.mock('@hubspot/local-dev-lib/config');
21
- vi.mock('../../ui/render');
22
- vi.mock('../../ui/components/getStarted/GetStartedFlow');
23
- vi.mock('open');
24
- vi.mock('fs-extra', () => ({
25
- default: {
26
- readFileSync: vi.fn().mockReturnValue('{"name": "test-project"}'),
27
- existsSync: vi.fn().mockReturnValue(false),
28
- readdirSync: vi.fn().mockReturnValue(['file1.js', 'file2.js']),
29
- },
30
- }));
31
- describe('commands/get-started', () => {
32
- beforeEach(() => {
33
- // @TODO Revisit config mocking in tests
34
- getConfigAccountById.mockReturnValue({
35
- accountId: 12345,
36
- name: 'Test Account',
37
- authType: 'personalaccesskey',
38
- personalAccessKey: 'test-key',
39
- env: 'prod',
40
- });
41
- });
42
- describe('command', () => {
43
- it('should have the correct command structure', () => {
44
- expect(getStartedCommand.command).toEqual('get-started');
45
- });
46
- });
47
- describe('describe', () => {
48
- it('should have a defined describe property', () => {
49
- expect(getStartedCommand.describe).toBeDefined();
50
- });
51
- });
52
- describe('command structure', () => {
53
- it('should have handler function', () => {
54
- expect(getStartedCommand.handler).toBeDefined();
55
- expect(typeof getStartedCommand.handler).toBe('function');
56
- });
57
- it('should have builder function', () => {
58
- expect(getStartedCommand.builder).toBeDefined();
59
- expect(typeof getStartedCommand.builder).toBe('function');
60
- });
61
- });
62
- describe('handler', () => {
63
- const mockArgs = {
64
- derivedAccountId: 12345,
65
- templateSource: undefined,
66
- name: 'test-project',
67
- dest: 'test-destination',
68
- d: false,
69
- debug: false,
70
- c: undefined,
71
- config: undefined,
72
- a: undefined,
73
- account: undefined,
74
- 'use-env': undefined,
75
- useEnv: undefined,
76
- _: [],
77
- $0: 'hs',
78
- };
79
- beforeEach(() => {
80
- trackCommandUsage.mockResolvedValue(undefined);
81
- projectNameAndDestPrompt.mockResolvedValue({
82
- dest: 'test-destination',
83
- name: 'test-project',
84
- });
85
- cloneGithubRepo.mockResolvedValue(true);
86
- getProjectConfig.mockResolvedValue({
87
- projectConfig: null,
88
- projectDir: null,
89
- });
90
- writeProjectConfig.mockResolvedValue(true);
91
- getProjectPackageJsonLocations.mockResolvedValue(['/path/to/package/dir']);
92
- installPackages.mockResolvedValue(undefined);
93
- process.exit = vi.fn();
94
- });
95
- describe('CMS flow', () => {
96
- it('should handle CMS option selection', async () => {
97
- promptUser.mockResolvedValue({
98
- default: GET_STARTED_OPTIONS.CMS,
99
- });
100
- await getStartedCommand.handler(mockArgs);
101
- expect(process.exit).toHaveBeenCalledWith(EXIT_CODES.SUCCESS);
102
- });
103
- it('should open Design Manager when user confirms and browser is available', async () => {
104
- promptUser
105
- .mockResolvedValueOnce({ default: GET_STARTED_OPTIONS.CMS })
106
- .mockResolvedValueOnce({ shouldOpen: true });
107
- await getStartedCommand.handler(mockArgs);
108
- expect(open).toHaveBeenCalledWith(expect.stringContaining('design-manager'), { url: true });
109
- });
110
- it('should use Ink flow when v2 flag is enabled', async () => {
111
- getGetStartedFlow.mockImplementation(() => null);
112
- renderInteractive.mockResolvedValue(undefined);
113
- await getStartedCommand.handler({ ...mockArgs, v2: true });
114
- expect(renderInteractive).toHaveBeenCalled();
115
- expect(promptUser).not.toHaveBeenCalled();
116
- expect(process.exit).toHaveBeenCalledWith(EXIT_CODES.SUCCESS);
117
- });
118
- });
119
- describe('App flow', () => {
120
- beforeEach(() => {
121
- promptUser
122
- .mockResolvedValueOnce({
123
- default: GET_STARTED_OPTIONS.APP,
124
- })
125
- .mockResolvedValueOnce({
126
- shouldUpload: true,
127
- });
128
- });
129
- it('should handle App option selection', async () => {
130
- await getStartedCommand.handler(mockArgs);
131
- expect(projectNameAndDestPrompt).toHaveBeenCalledWith(mockArgs);
132
- expect(cloneGithubRepo).toHaveBeenCalled();
133
- });
134
- it('should handle upload flow when user confirms', async () => {
135
- promptUser
136
- .mockResolvedValueOnce({ default: GET_STARTED_OPTIONS.APP })
137
- .mockResolvedValueOnce({ shouldUpload: true });
138
- const mockProjectConfig = {
139
- name: 'test-project',
140
- srcDir: 'src',
141
- platformVersion: '1.0.0',
142
- };
143
- getProjectConfig
144
- .mockResolvedValueOnce({
145
- projectConfig: null,
146
- projectDir: null,
147
- })
148
- .mockResolvedValueOnce({
149
- projectConfig: mockProjectConfig,
150
- projectDir: '/path/to/project',
151
- });
152
- await getStartedCommand.handler(mockArgs);
153
- expect(promptUser).toHaveBeenCalledWith([
154
- expect.objectContaining({
155
- type: 'confirm',
156
- name: 'shouldUpload',
157
- message: expect.any(String),
158
- default: true,
159
- }),
160
- ]);
161
- });
162
- });
163
- describe('tracking', () => {
164
- it('should track command usage', async () => {
165
- promptUser.mockResolvedValue({
166
- default: GET_STARTED_OPTIONS.APP,
167
- });
168
- await getStartedCommand.handler(mockArgs);
169
- expect(trackCommandUsage).toHaveBeenCalledWith('get-started', {}, mockArgs.derivedAccountId);
170
- });
171
- });
172
- });
173
- });
@@ -1 +0,0 @@
1
- export {};
@@ -1,50 +0,0 @@
1
- import yargs from 'yargs';
2
- import clear from '../hubdb/clear.js';
3
- import create from '../hubdb/create.js';
4
- import deleteCommand from '../hubdb/delete.js';
5
- import fetch from '../hubdb/fetch.js';
6
- import list from '../hubdb/list.js';
7
- import hubdbCommands from '../hubdb.js';
8
- vi.mock('../hubdb/clear');
9
- vi.mock('../hubdb/create');
10
- vi.mock('../hubdb/delete');
11
- vi.mock('../hubdb/fetch');
12
- vi.mock('../../lib/commonOpts');
13
- const commandSpy = vi
14
- .spyOn(yargs, 'command')
15
- .mockReturnValue(yargs);
16
- const demandCommandSpy = vi
17
- .spyOn(yargs, 'demandCommand')
18
- .mockReturnValue(yargs);
19
- describe('commands/hubdb', () => {
20
- describe('command', () => {
21
- it('should have the correct command structure', () => {
22
- expect(hubdbCommands.command).toEqual('hubdb');
23
- });
24
- });
25
- describe('describe', () => {
26
- it('should provide a description', () => {
27
- expect(hubdbCommands.describe).toBeDefined();
28
- });
29
- });
30
- describe('builder', () => {
31
- beforeEach(() => {
32
- commandSpy.mockClear();
33
- demandCommandSpy.mockClear();
34
- });
35
- const subcommands = [clear, create, deleteCommand, fetch, list];
36
- it('should demand the command takes one positional argument', () => {
37
- hubdbCommands.builder(yargs);
38
- expect(demandCommandSpy).toHaveBeenCalledTimes(1);
39
- expect(demandCommandSpy).toHaveBeenCalledWith(1, '');
40
- });
41
- it('should add the correct number of sub commands', () => {
42
- hubdbCommands.builder(yargs);
43
- expect(commandSpy).toHaveBeenCalledTimes(subcommands.length);
44
- });
45
- it.each(subcommands)('should attach the %s subcommand', module => {
46
- hubdbCommands.builder(yargs);
47
- expect(commandSpy).toHaveBeenCalledWith(module);
48
- });
49
- });
50
- });
@@ -1 +0,0 @@
1
- export {};
@@ -1,42 +0,0 @@
1
- import yargs from 'yargs';
2
- import { addConfigOptions, addTestingOptions } from '../../lib/commonOpts.js';
3
- import initCommand from '../init.js';
4
- vi.mock('../../lib/commonOpts');
5
- const optionsSpy = vi
6
- .spyOn(yargs, 'options')
7
- .mockReturnValue(yargs);
8
- describe('commands/init', () => {
9
- describe('command', () => {
10
- it('should have the correct command structure', () => {
11
- expect(initCommand.command).toEqual('init');
12
- });
13
- });
14
- describe('describe', () => {
15
- it('should provide a description', () => {
16
- expect(initCommand.describe).toBeDefined();
17
- });
18
- });
19
- describe('builder', () => {
20
- it('should support the correct options', () => {
21
- initCommand.builder(yargs);
22
- expect(optionsSpy).toHaveBeenCalledTimes(1);
23
- expect(optionsSpy).toHaveBeenCalledWith({
24
- 'auth-type': expect.objectContaining({
25
- type: 'string',
26
- choices: ['personalaccesskey', 'oauth2'],
27
- default: 'personalaccesskey',
28
- }),
29
- account: expect.objectContaining({ type: 'string' }),
30
- 'disable-tracking': expect.objectContaining({
31
- type: 'boolean',
32
- hidden: true,
33
- default: false,
34
- }),
35
- });
36
- expect(addConfigOptions).toHaveBeenCalledTimes(1);
37
- expect(addConfigOptions).toHaveBeenCalledWith(yargs);
38
- expect(addTestingOptions).toHaveBeenCalledTimes(1);
39
- expect(addTestingOptions).toHaveBeenCalledWith(yargs);
40
- });
41
- });
42
- });
@@ -1 +0,0 @@
1
- export {};
@@ -1,46 +0,0 @@
1
- import yargs from 'yargs';
2
- import startCommand from '../mcp/start.js';
3
- import setupCommand from '../mcp/setup.js';
4
- import mcpCommand from '../mcp.js';
5
- vi.mock('../mcp/start');
6
- vi.mock('../mcp/setup');
7
- vi.mock('../../lib/commonOpts');
8
- const commandSpy = vi
9
- .spyOn(yargs, 'command')
10
- .mockReturnValue(yargs);
11
- const demandCommandSpy = vi
12
- .spyOn(yargs, 'demandCommand')
13
- .mockReturnValue(yargs);
14
- describe('commands/mcp', () => {
15
- describe('command', () => {
16
- it('should have the correct command structure', () => {
17
- expect(mcpCommand.command).toEqual('mcp');
18
- });
19
- });
20
- describe('describe', () => {
21
- it('should provide a description', () => {
22
- expect(mcpCommand.describe).toBeDefined();
23
- });
24
- });
25
- describe('builder', () => {
26
- beforeEach(() => {
27
- commandSpy.mockClear();
28
- demandCommandSpy.mockClear();
29
- });
30
- const subcommands = [startCommand, setupCommand];
31
- it('should demand the command takes one positional argument', () => {
32
- mcpCommand.builder(yargs);
33
- expect(demandCommandSpy).toHaveBeenCalledTimes(1);
34
- expect(demandCommandSpy).toHaveBeenCalledWith(1, '');
35
- });
36
- it('should add the correct number of sub commands', () => {
37
- mcpCommand.builder(yargs);
38
- expect(commandSpy).toHaveBeenCalledTimes(subcommands.length);
39
- });
40
- it.each(subcommands)('should attach the %s subcommand', module => {
41
- mcpCommand.builder(yargs);
42
- expect(module).toBeDefined();
43
- expect(commandSpy).toHaveBeenCalledWith(module);
44
- });
45
- });
46
- });
@@ -1 +0,0 @@
1
- export {};
@@ -1,58 +0,0 @@
1
- import yargs from 'yargs';
2
- import openCommand from '../open.js';
3
- import * as commonOpts from '../../lib/commonOpts.js';
4
- vi.mock('../../lib/commonOpts');
5
- // Spies are now safe to create since the methods exist on the mock
6
- const positionalSpy = vi.spyOn(mockYargs, 'positional');
7
- const optionSpy = vi.spyOn(mockYargs, 'option');
8
- const exampleSpy = vi.spyOn(mockYargs, 'example');
9
- describe('commands/open', () => {
10
- describe('command', () => {
11
- it('should have the correct command structure', () => {
12
- expect(openCommand.command).toBe('open [shortcut]');
13
- });
14
- });
15
- describe('describe', () => {
16
- it('should provide a description', () => {
17
- expect(openCommand.describe).toBeDefined();
18
- });
19
- });
20
- describe('builder', () => {
21
- it('should support the correct options', () => {
22
- openCommand.builder(yargs);
23
- expect(commonOpts.addGlobalOptions).toHaveBeenCalledTimes(1);
24
- expect(commonOpts.addGlobalOptions).toHaveBeenCalledWith(yargs);
25
- expect(commonOpts.addConfigOptions).toHaveBeenCalledTimes(1);
26
- expect(commonOpts.addConfigOptions).toHaveBeenCalledWith(yargs);
27
- expect(commonOpts.addAccountOptions).toHaveBeenCalledTimes(1);
28
- expect(commonOpts.addAccountOptions).toHaveBeenCalledWith(yargs);
29
- expect(commonOpts.addUseEnvironmentOptions).toHaveBeenCalledTimes(1);
30
- expect(commonOpts.addUseEnvironmentOptions).toHaveBeenCalledWith(yargs);
31
- });
32
- it('should add the shortcut positional argument', () => {
33
- openCommand.builder(yargs);
34
- expect(positionalSpy).toHaveBeenCalledWith('[shortcut]', {
35
- describe: expect.any(String),
36
- type: 'string',
37
- });
38
- });
39
- it('should add the list option', () => {
40
- openCommand.builder(yargs);
41
- expect(optionSpy).toHaveBeenCalledWith('list', {
42
- alias: 'l',
43
- describe: expect.any(String),
44
- type: 'boolean',
45
- });
46
- });
47
- it('should add examples', () => {
48
- openCommand.builder(yargs);
49
- expect(exampleSpy).toHaveBeenCalledWith([
50
- ['$0 open'],
51
- ['$0 open --list'],
52
- ['$0 open settings'],
53
- ['$0 open settings/navigation'],
54
- ['$0 open sn'],
55
- ]);
56
- });
57
- });
58
- });
@@ -1 +0,0 @@
1
- export {};