mcdev 6.0.2 → 7.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (602) hide show
  1. package/.beautyamp.json +13 -0
  2. package/.eslintrc.json +7 -1
  3. package/.github/ISSUE_TEMPLATE/bug.yml +1 -0
  4. package/.github/PULL_REQUEST_TEMPLATE/pr_template_release.md +10 -3
  5. package/.github/workflows/close_issues_on_merge.yml +1 -1
  6. package/.github/workflows/code-test.yml +51 -3
  7. package/.github/workflows/coverage-base-update.yml +1 -1
  8. package/.github/workflows/coverage-develop-branch.yml +1 -1
  9. package/.github/workflows/coverage-main-branch.yml +1 -1
  10. package/.github/workflows/coverage.yml +2 -2
  11. package/.github/workflows/npm-publish.yml +3 -2
  12. package/.github/workflows/pr-labeler.yml +1 -1
  13. package/.husky/commit-msg +0 -2
  14. package/.husky/post-checkout +0 -3
  15. package/.husky/post-merge +2 -7
  16. package/.husky/pre-commit +5 -5
  17. package/.prettierrc +0 -8
  18. package/.vscode/extensions.json +2 -0
  19. package/.vscode/settings.json +15 -3
  20. package/@types/lib/Builder.d.ts +97 -0
  21. package/@types/lib/Builder.d.ts.map +1 -0
  22. package/@types/lib/Deployer.d.ts +99 -0
  23. package/@types/lib/Deployer.d.ts.map +1 -0
  24. package/@types/lib/MetadataTypeDefinitions.d.ts +80 -0
  25. package/@types/lib/MetadataTypeDefinitions.d.ts.map +1 -0
  26. package/@types/lib/MetadataTypeInfo.d.ts +78 -0
  27. package/@types/lib/MetadataTypeInfo.d.ts.map +1 -0
  28. package/@types/lib/Retriever.d.ts +66 -0
  29. package/@types/lib/Retriever.d.ts.map +1 -0
  30. package/@types/lib/cli.d.ts +3 -0
  31. package/@types/lib/cli.d.ts.map +1 -0
  32. package/@types/lib/index.d.ts +383 -0
  33. package/@types/lib/index.d.ts.map +1 -0
  34. package/@types/lib/metadataTypes/Asset.d.ts +1082 -0
  35. package/@types/lib/metadataTypes/Asset.d.ts.map +1 -0
  36. package/@types/lib/metadataTypes/AttributeGroup.d.ts +290 -0
  37. package/@types/lib/metadataTypes/AttributeGroup.d.ts.map +1 -0
  38. package/@types/lib/metadataTypes/AttributeSet.d.ts +968 -0
  39. package/@types/lib/metadataTypes/AttributeSet.d.ts.map +1 -0
  40. package/@types/lib/metadataTypes/Automation.d.ts +921 -0
  41. package/@types/lib/metadataTypes/Automation.d.ts.map +1 -0
  42. package/@types/lib/metadataTypes/Campaign.d.ts +190 -0
  43. package/@types/lib/metadataTypes/Campaign.d.ts.map +1 -0
  44. package/@types/lib/metadataTypes/ContentArea.d.ts +250 -0
  45. package/@types/lib/metadataTypes/ContentArea.d.ts.map +1 -0
  46. package/@types/lib/metadataTypes/DataExtension.d.ts +571 -0
  47. package/@types/lib/metadataTypes/DataExtension.d.ts.map +1 -0
  48. package/@types/lib/metadataTypes/DataExtensionField.d.ts +236 -0
  49. package/@types/lib/metadataTypes/DataExtensionField.d.ts.map +1 -0
  50. package/@types/lib/metadataTypes/DataExtensionTemplate.d.ts +175 -0
  51. package/@types/lib/metadataTypes/DataExtensionTemplate.d.ts.map +1 -0
  52. package/@types/lib/metadataTypes/DataExtract.d.ts +217 -0
  53. package/@types/lib/metadataTypes/DataExtract.d.ts.map +1 -0
  54. package/@types/lib/metadataTypes/DataExtractType.d.ts +80 -0
  55. package/@types/lib/metadataTypes/DataExtractType.d.ts.map +1 -0
  56. package/@types/lib/metadataTypes/DeliveryProfile.d.ts +102 -0
  57. package/@types/lib/metadataTypes/DeliveryProfile.d.ts.map +1 -0
  58. package/@types/lib/metadataTypes/Discovery.d.ts +189 -0
  59. package/@types/lib/metadataTypes/Discovery.d.ts.map +1 -0
  60. package/@types/lib/metadataTypes/Email.d.ts +384 -0
  61. package/@types/lib/metadataTypes/Email.d.ts.map +1 -0
  62. package/@types/lib/metadataTypes/EmailSend.d.ts +652 -0
  63. package/@types/lib/metadataTypes/EmailSend.d.ts.map +1 -0
  64. package/@types/lib/metadataTypes/Event.d.ts +958 -0
  65. package/@types/lib/metadataTypes/Event.d.ts.map +1 -0
  66. package/@types/lib/metadataTypes/FileLocation.d.ts +101 -0
  67. package/@types/lib/metadataTypes/FileLocation.d.ts.map +1 -0
  68. package/@types/lib/metadataTypes/FileTransfer.d.ts +228 -0
  69. package/@types/lib/metadataTypes/FileTransfer.d.ts.map +1 -0
  70. package/@types/lib/metadataTypes/Filter.d.ts +145 -0
  71. package/@types/lib/metadataTypes/Filter.d.ts.map +1 -0
  72. package/@types/lib/metadataTypes/Folder.d.ts +287 -0
  73. package/@types/lib/metadataTypes/Folder.d.ts.map +1 -0
  74. package/@types/lib/metadataTypes/ImportFile.d.ts +409 -0
  75. package/@types/lib/metadataTypes/ImportFile.d.ts.map +1 -0
  76. package/@types/lib/metadataTypes/Journey.d.ts +541 -0
  77. package/@types/lib/metadataTypes/Journey.d.ts.map +1 -0
  78. package/@types/lib/metadataTypes/List.d.ts +191 -0
  79. package/@types/lib/metadataTypes/List.d.ts.map +1 -0
  80. package/@types/lib/metadataTypes/MetadataType.d.ts +680 -0
  81. package/@types/lib/metadataTypes/MetadataType.d.ts.map +1 -0
  82. package/@types/lib/metadataTypes/MobileCode.d.ts +225 -0
  83. package/@types/lib/metadataTypes/MobileCode.d.ts.map +1 -0
  84. package/@types/lib/metadataTypes/MobileKeyword.d.ts +432 -0
  85. package/@types/lib/metadataTypes/MobileKeyword.d.ts.map +1 -0
  86. package/@types/lib/metadataTypes/MobileMessage.d.ts +931 -0
  87. package/@types/lib/metadataTypes/MobileMessage.d.ts.map +1 -0
  88. package/@types/lib/metadataTypes/Query.d.ts +299 -0
  89. package/@types/lib/metadataTypes/Query.d.ts.map +1 -0
  90. package/@types/lib/metadataTypes/Role.d.ts +164 -0
  91. package/@types/lib/metadataTypes/Role.d.ts.map +1 -0
  92. package/@types/lib/metadataTypes/Script.d.ts +305 -0
  93. package/@types/lib/metadataTypes/Script.d.ts.map +1 -0
  94. package/@types/lib/metadataTypes/SendClassification.d.ts +221 -0
  95. package/@types/lib/metadataTypes/SendClassification.d.ts.map +1 -0
  96. package/@types/lib/metadataTypes/SenderProfile.d.ts +257 -0
  97. package/@types/lib/metadataTypes/SenderProfile.d.ts.map +1 -0
  98. package/@types/lib/metadataTypes/TransactionalEmail.d.ts +230 -0
  99. package/@types/lib/metadataTypes/TransactionalEmail.d.ts.map +1 -0
  100. package/@types/lib/metadataTypes/TransactionalMessage.d.ts +163 -0
  101. package/@types/lib/metadataTypes/TransactionalMessage.d.ts.map +1 -0
  102. package/@types/lib/metadataTypes/TransactionalPush.d.ts +175 -0
  103. package/@types/lib/metadataTypes/TransactionalPush.d.ts.map +1 -0
  104. package/@types/lib/metadataTypes/TransactionalSMS.d.ts +205 -0
  105. package/@types/lib/metadataTypes/TransactionalSMS.d.ts.map +1 -0
  106. package/@types/lib/metadataTypes/TriggeredSend.d.ts +671 -0
  107. package/@types/lib/metadataTypes/TriggeredSend.d.ts.map +1 -0
  108. package/@types/lib/metadataTypes/User.d.ts +677 -0
  109. package/@types/lib/metadataTypes/User.d.ts.map +1 -0
  110. package/@types/lib/metadataTypes/Verification.d.ts +188 -0
  111. package/@types/lib/metadataTypes/Verification.d.ts.map +1 -0
  112. package/@types/lib/metadataTypes/definitions/Asset.definition.d.ts +692 -0
  113. package/@types/lib/metadataTypes/definitions/Asset.definition.d.ts.map +1 -0
  114. package/@types/lib/metadataTypes/definitions/AttributeGroup.definition.d.ts +246 -0
  115. package/@types/lib/metadataTypes/definitions/AttributeGroup.definition.d.ts.map +1 -0
  116. package/@types/lib/metadataTypes/definitions/AttributeSet.definition.d.ts +893 -0
  117. package/@types/lib/metadataTypes/definitions/AttributeSet.definition.d.ts.map +1 -0
  118. package/@types/lib/metadataTypes/definitions/Automation.definition.d.ts +616 -0
  119. package/@types/lib/metadataTypes/definitions/Automation.definition.d.ts.map +1 -0
  120. package/@types/lib/metadataTypes/definitions/Campaign.definition.d.ts +126 -0
  121. package/@types/lib/metadataTypes/definitions/Campaign.definition.d.ts.map +1 -0
  122. package/@types/lib/metadataTypes/definitions/ContentArea.definition.d.ts +182 -0
  123. package/@types/lib/metadataTypes/definitions/ContentArea.definition.d.ts.map +1 -0
  124. package/@types/lib/metadataTypes/definitions/DataExtension.definition.d.ts +237 -0
  125. package/@types/lib/metadataTypes/definitions/DataExtension.definition.d.ts.map +1 -0
  126. package/@types/lib/metadataTypes/definitions/DataExtensionField.definition.d.ts +121 -0
  127. package/@types/lib/metadataTypes/definitions/DataExtensionField.definition.d.ts.map +1 -0
  128. package/@types/lib/metadataTypes/definitions/DataExtensionTemplate.definition.d.ts +133 -0
  129. package/@types/lib/metadataTypes/definitions/DataExtensionTemplate.definition.d.ts.map +1 -0
  130. package/@types/lib/metadataTypes/definitions/DataExtract.definition.d.ts +156 -0
  131. package/@types/lib/metadataTypes/definitions/DataExtract.definition.d.ts.map +1 -0
  132. package/@types/lib/metadataTypes/definitions/DataExtractType.definition.d.ts +34 -0
  133. package/@types/lib/metadataTypes/definitions/DataExtractType.definition.d.ts.map +1 -0
  134. package/@types/lib/metadataTypes/definitions/DeliveryProfile.definition.d.ts +80 -0
  135. package/@types/lib/metadataTypes/definitions/DeliveryProfile.definition.d.ts.map +1 -0
  136. package/@types/lib/metadataTypes/definitions/Discovery.definition.d.ts +146 -0
  137. package/@types/lib/metadataTypes/definitions/Discovery.definition.d.ts.map +1 -0
  138. package/@types/lib/metadataTypes/definitions/Email.definition.d.ts +314 -0
  139. package/@types/lib/metadataTypes/definitions/Email.definition.d.ts.map +1 -0
  140. package/@types/lib/metadataTypes/definitions/EmailSend.definition.d.ts +582 -0
  141. package/@types/lib/metadataTypes/definitions/EmailSend.definition.d.ts.map +1 -0
  142. package/@types/lib/metadataTypes/definitions/Event.definition.d.ts +867 -0
  143. package/@types/lib/metadataTypes/definitions/Event.definition.d.ts.map +1 -0
  144. package/@types/lib/metadataTypes/definitions/FileLocation.definition.d.ts +68 -0
  145. package/@types/lib/metadataTypes/definitions/FileLocation.definition.d.ts.map +1 -0
  146. package/@types/lib/metadataTypes/definitions/FileTransfer.definition.d.ts +191 -0
  147. package/@types/lib/metadataTypes/definitions/FileTransfer.definition.d.ts.map +1 -0
  148. package/@types/lib/metadataTypes/definitions/Filter.definition.d.ts +147 -0
  149. package/@types/lib/metadataTypes/definitions/Filter.definition.d.ts.map +1 -0
  150. package/@types/lib/metadataTypes/definitions/Folder.definition.d.ts +174 -0
  151. package/@types/lib/metadataTypes/definitions/Folder.definition.d.ts.map +1 -0
  152. package/@types/lib/metadataTypes/definitions/ImportFile.definition.d.ts +306 -0
  153. package/@types/lib/metadataTypes/definitions/ImportFile.definition.d.ts.map +1 -0
  154. package/@types/lib/metadataTypes/definitions/Journey.definition.d.ts +426 -0
  155. package/@types/lib/metadataTypes/definitions/Journey.definition.d.ts.map +1 -0
  156. package/@types/lib/metadataTypes/definitions/List.definition.d.ts +118 -0
  157. package/@types/lib/metadataTypes/definitions/List.definition.d.ts.map +1 -0
  158. package/@types/lib/metadataTypes/definitions/MobileCode.definition.d.ts +167 -0
  159. package/@types/lib/metadataTypes/definitions/MobileCode.definition.d.ts.map +1 -0
  160. package/@types/lib/metadataTypes/definitions/MobileKeyword.definition.d.ts +276 -0
  161. package/@types/lib/metadataTypes/definitions/MobileKeyword.definition.d.ts.map +1 -0
  162. package/@types/lib/metadataTypes/definitions/MobileMessage.definition.d.ts +783 -0
  163. package/@types/lib/metadataTypes/definitions/MobileMessage.definition.d.ts.map +1 -0
  164. package/@types/lib/metadataTypes/definitions/Query.definition.d.ts +203 -0
  165. package/@types/lib/metadataTypes/definitions/Query.definition.d.ts.map +1 -0
  166. package/@types/lib/metadataTypes/definitions/Role.definition.d.ts +108 -0
  167. package/@types/lib/metadataTypes/definitions/Role.definition.d.ts.map +1 -0
  168. package/@types/lib/metadataTypes/definitions/Script.definition.d.ts +153 -0
  169. package/@types/lib/metadataTypes/definitions/Script.definition.d.ts.map +1 -0
  170. package/@types/lib/metadataTypes/definitions/SendClassification.definition.d.ts +151 -0
  171. package/@types/lib/metadataTypes/definitions/SendClassification.definition.d.ts.map +1 -0
  172. package/@types/lib/metadataTypes/definitions/SenderProfile.definition.d.ts +180 -0
  173. package/@types/lib/metadataTypes/definitions/SenderProfile.definition.d.ts.map +1 -0
  174. package/@types/lib/metadataTypes/definitions/TransactionalEmail.definition.d.ts +167 -0
  175. package/@types/lib/metadataTypes/definitions/TransactionalEmail.definition.d.ts.map +1 -0
  176. package/@types/lib/metadataTypes/definitions/TransactionalMessage.definition.d.ts +99 -0
  177. package/@types/lib/metadataTypes/definitions/TransactionalMessage.definition.d.ts.map +1 -0
  178. package/@types/lib/metadataTypes/definitions/TransactionalPush.definition.d.ts +119 -0
  179. package/@types/lib/metadataTypes/definitions/TransactionalPush.definition.d.ts.map +1 -0
  180. package/@types/lib/metadataTypes/definitions/TransactionalSMS.definition.d.ts +113 -0
  181. package/@types/lib/metadataTypes/definitions/TransactionalSMS.definition.d.ts.map +1 -0
  182. package/@types/lib/metadataTypes/definitions/TriggeredSend.definition.d.ts +560 -0
  183. package/@types/lib/metadataTypes/definitions/TriggeredSend.definition.d.ts.map +1 -0
  184. package/@types/lib/metadataTypes/definitions/User.definition.d.ts +423 -0
  185. package/@types/lib/metadataTypes/definitions/User.definition.d.ts.map +1 -0
  186. package/@types/lib/metadataTypes/definitions/Verification.definition.d.ts +129 -0
  187. package/@types/lib/metadataTypes/definitions/Verification.definition.d.ts.map +1 -0
  188. package/@types/lib/retrieveChangelog.d.ts +3 -0
  189. package/@types/lib/retrieveChangelog.d.ts.map +1 -0
  190. package/@types/lib/util/auth.d.ts +41 -0
  191. package/@types/lib/util/auth.d.ts.map +1 -0
  192. package/@types/lib/util/businessUnit.d.ts +21 -0
  193. package/@types/lib/util/businessUnit.d.ts.map +1 -0
  194. package/@types/lib/util/cache.d.ts +64 -0
  195. package/@types/lib/util/cache.d.ts.map +1 -0
  196. package/@types/lib/util/cli.d.ts +125 -0
  197. package/@types/lib/util/cli.d.ts.map +1 -0
  198. package/@types/lib/util/config.d.ts +45 -0
  199. package/@types/lib/util/config.d.ts.map +1 -0
  200. package/@types/lib/util/devops.d.ts +62 -0
  201. package/@types/lib/util/devops.d.ts.map +1 -0
  202. package/@types/lib/util/file.d.ts +20 -0
  203. package/@types/lib/util/file.d.ts.map +1 -0
  204. package/@types/lib/util/init.config.d.ts +66 -0
  205. package/@types/lib/util/init.config.d.ts.map +1 -0
  206. package/@types/lib/util/init.d.ts +72 -0
  207. package/@types/lib/util/init.d.ts.map +1 -0
  208. package/@types/lib/util/init.git.d.ts +40 -0
  209. package/@types/lib/util/init.git.d.ts.map +1 -0
  210. package/@types/lib/util/init.npm.d.ts +24 -0
  211. package/@types/lib/util/init.npm.d.ts.map +1 -0
  212. package/@types/lib/util/replaceContentBlockReference.d.ts +105 -0
  213. package/@types/lib/util/replaceContentBlockReference.d.ts.map +1 -0
  214. package/@types/lib/util/util.d.ts +322 -0
  215. package/@types/lib/util/util.d.ts.map +1 -0
  216. package/@types/types/mcdev.d.d.ts +1282 -0
  217. package/@types/types/mcdev.d.d.ts.map +1 -0
  218. package/LICENSE +1 -1
  219. package/README.md +7 -3
  220. package/boilerplate/files/.beautyamp.json +13 -0
  221. package/boilerplate/files/.prettierrc +3 -0
  222. package/boilerplate/files/.vscode/extensions.json +6 -1
  223. package/boilerplate/files/.vscode/settings.json +16 -4
  224. package/boilerplate/forcedUpdates.json +9 -0
  225. package/jsconfig.json +7 -2
  226. package/lib/Builder.js +49 -45
  227. package/lib/Deployer.js +100 -45
  228. package/lib/MetadataTypeDefinitions.js +6 -0
  229. package/lib/MetadataTypeInfo.js +4 -0
  230. package/lib/Retriever.js +33 -27
  231. package/lib/cli.js +363 -28
  232. package/lib/index.js +615 -55
  233. package/lib/metadataTypes/Asset.js +811 -159
  234. package/lib/metadataTypes/AttributeGroup.js +17 -12
  235. package/lib/metadataTypes/AttributeSet.js +20 -15
  236. package/lib/metadataTypes/Automation.js +125 -93
  237. package/lib/metadataTypes/Campaign.js +18 -6
  238. package/lib/metadataTypes/ContentArea.js +21 -18
  239. package/lib/metadataTypes/DataExtension.js +229 -113
  240. package/lib/metadataTypes/DataExtensionField.js +52 -53
  241. package/lib/metadataTypes/DataExtensionTemplate.js +17 -5
  242. package/lib/metadataTypes/DataExtract.js +62 -27
  243. package/lib/metadataTypes/DataExtractType.js +17 -5
  244. package/lib/metadataTypes/DeliveryProfile.js +47 -0
  245. package/lib/metadataTypes/Discovery.js +15 -4
  246. package/lib/metadataTypes/Email.js +22 -19
  247. package/lib/metadataTypes/EmailSend.js +135 -35
  248. package/lib/metadataTypes/Event.js +95 -60
  249. package/lib/metadataTypes/FileLocation.js +17 -5
  250. package/lib/metadataTypes/FileTransfer.js +62 -26
  251. package/lib/metadataTypes/Filter.js +16 -4
  252. package/lib/metadataTypes/Folder.js +67 -39
  253. package/lib/metadataTypes/ImportFile.js +341 -91
  254. package/lib/metadataTypes/Journey.js +681 -324
  255. package/lib/metadataTypes/List.js +26 -14
  256. package/lib/metadataTypes/MetadataType.js +501 -265
  257. package/lib/metadataTypes/MobileCode.js +17 -5
  258. package/lib/metadataTypes/MobileKeyword.js +59 -43
  259. package/lib/metadataTypes/MobileMessage.js +67 -40
  260. package/lib/metadataTypes/Query.js +46 -38
  261. package/lib/metadataTypes/Role.js +34 -23
  262. package/lib/metadataTypes/Script.js +127 -39
  263. package/lib/metadataTypes/SendClassification.js +120 -5
  264. package/lib/metadataTypes/SenderProfile.js +179 -0
  265. package/lib/metadataTypes/TransactionalEmail.js +30 -17
  266. package/lib/metadataTypes/TransactionalMessage.js +25 -11
  267. package/lib/metadataTypes/TransactionalPush.js +24 -9
  268. package/lib/metadataTypes/TransactionalSMS.js +78 -46
  269. package/lib/metadataTypes/TriggeredSend.js +191 -43
  270. package/lib/metadataTypes/User.js +90 -62
  271. package/lib/metadataTypes/Verification.js +39 -21
  272. package/lib/metadataTypes/definitions/Asset.definition.js +3 -3
  273. package/lib/metadataTypes/definitions/AttributeGroup.definition.js +7 -1
  274. package/lib/metadataTypes/definitions/AttributeSet.definition.js +2 -2
  275. package/lib/metadataTypes/definitions/Automation.definition.js +4 -1
  276. package/lib/metadataTypes/definitions/Campaign.definition.js +1 -1
  277. package/lib/metadataTypes/definitions/ContentArea.definition.js +1 -1
  278. package/lib/metadataTypes/definitions/DataExtension.definition.js +17 -1
  279. package/lib/metadataTypes/definitions/DataExtensionTemplate.definition.js +1 -1
  280. package/lib/metadataTypes/definitions/DataExtractType.definition.js +2 -2
  281. package/lib/metadataTypes/definitions/DeliveryProfile.definition.js +59 -0
  282. package/lib/metadataTypes/definitions/Discovery.definition.js +1 -1
  283. package/lib/metadataTypes/definitions/Email.definition.js +1 -1
  284. package/lib/metadataTypes/definitions/EmailSend.definition.js +19 -4
  285. package/lib/metadataTypes/definitions/Event.definition.js +140 -128
  286. package/lib/metadataTypes/definitions/FileLocation.definition.js +1 -1
  287. package/lib/metadataTypes/definitions/Filter.definition.js +1 -1
  288. package/lib/metadataTypes/definitions/Folder.definition.js +25 -2
  289. package/lib/metadataTypes/definitions/ImportFile.definition.js +52 -7
  290. package/lib/metadataTypes/definitions/Journey.definition.js +12 -0
  291. package/lib/metadataTypes/definitions/List.definition.js +1 -1
  292. package/lib/metadataTypes/definitions/MobileCode.definition.js +1 -1
  293. package/lib/metadataTypes/definitions/MobileMessage.definition.js +11 -5
  294. package/lib/metadataTypes/definitions/Query.definition.js +6 -0
  295. package/lib/metadataTypes/definitions/Script.definition.js +14 -14
  296. package/lib/metadataTypes/definitions/SendClassification.definition.js +60 -20
  297. package/lib/metadataTypes/definitions/SenderProfile.definition.js +185 -0
  298. package/lib/metadataTypes/definitions/TransactionalEmail.definition.js +2 -2
  299. package/lib/metadataTypes/definitions/TransactionalMessage.definition.js +69 -0
  300. package/lib/metadataTypes/definitions/TransactionalPush.definition.js +6 -0
  301. package/lib/metadataTypes/definitions/TransactionalSMS.definition.js +6 -0
  302. package/lib/metadataTypes/definitions/TriggeredSend.definition.js +15 -4
  303. package/lib/metadataTypes/definitions/Verification.definition.js +1 -1
  304. package/lib/retrieveChangelog.js +7 -2
  305. package/lib/util/auth.js +56 -21
  306. package/lib/util/businessUnit.js +20 -2
  307. package/lib/util/cache.js +37 -18
  308. package/lib/util/cli.js +72 -29
  309. package/lib/util/config.js +27 -9
  310. package/lib/util/devops.js +45 -24
  311. package/lib/util/file.js +58 -33
  312. package/lib/util/init.config.js +55 -24
  313. package/lib/util/init.git.js +6 -6
  314. package/lib/util/init.js +36 -14
  315. package/lib/util/init.npm.js +2 -2
  316. package/lib/util/replaceContentBlockReference.js +278 -0
  317. package/lib/util/util.js +152 -54
  318. package/package.json +33 -30
  319. package/test/general.test.js +1327 -4
  320. package/test/mockRoot/.mcdevrc.json +26 -4
  321. package/test/mockRoot/deploy/testInstance/_ParentBU_/dataExtension/testExisting_dataExtensionShared.dataExtension-meta.json +3 -4
  322. package/test/mockRoot/deploy/testInstance/_ParentBU_/dataExtension/testNew_dataExtensionShared.dataExtension-meta.json +1 -4
  323. package/test/mockRoot/deploy/testInstance/_ParentBU_/query/testNew_query.query-meta.json +11 -0
  324. package/test/mockRoot/deploy/testInstance/_ParentBU_/query/testNew_query.query-meta.sql +4 -0
  325. package/test/mockRoot/deploy/testInstance/testBU/asset/block/testNew_asset.asset-block-meta.html +12 -0
  326. package/test/mockRoot/deploy/testInstance/testBU/asset/block/testNew_asset.asset-block-meta.json +39 -0
  327. package/test/mockRoot/deploy/testInstance/testBU/automation/testExisting_automation.automation-meta.json +6 -6
  328. package/test/mockRoot/deploy/testInstance/testBU/automation/testNew_automation.automation-meta.json +7 -7
  329. package/test/mockRoot/deploy/testInstance/testBU/dataExtension/testExisting_dataExtension.dataExtension-meta.json +3 -4
  330. package/test/mockRoot/deploy/testInstance/testBU/dataExtension/testNew_dataExtension.dataExtension-meta.json +1 -4
  331. package/test/mockRoot/deploy/testInstance/testBU/emailSend/testExisting_emailSend.emailSend-meta.json +36 -0
  332. package/test/mockRoot/deploy/testInstance/testBU/emailSend/testNew_emailSend.emailSend-meta.json +36 -0
  333. package/test/mockRoot/deploy/testInstance/testBU/importFile/testExisting_importFile.importFile-meta.json +10 -4
  334. package/test/mockRoot/deploy/testInstance/testBU/importFile/testNew_importFile.importFile-meta.json +8 -4
  335. package/test/mockRoot/deploy/testInstance/testBU/journey/testExisting_journey_Quicksend.journey-meta.json +232 -0
  336. package/test/mockRoot/deploy/testInstance/testBU/mobileMessage/NTIzOjc4OjA.mobileMessage-meta.json +2 -4
  337. package/test/mockRoot/deploy/testInstance/testBU/mobileMessage/new.mobileMessage-meta.json +2 -4
  338. package/test/mockRoot/deploy/testInstance/testBU/query/testExisting_query.query-meta.json +1 -1
  339. package/test/mockRoot/deploy/testInstance/testBU/query/testExisting_query_fixKeys.query-meta.json +1 -1
  340. package/test/mockRoot/deploy/testInstance/testBU/query/testNew_query.query-meta.json +1 -1
  341. package/test/mockRoot/deploy/testInstance/testBU/sendClassification/testExisting_sendClassification.sendClassification-meta.json +8 -0
  342. package/test/mockRoot/deploy/testInstance/testBU/sendClassification/testNew_sendClassification.sendClassification-meta.json +8 -0
  343. package/test/mockRoot/deploy/testInstance/testBU/senderProfile/testExisting_senderProfile.senderProfile-meta.json +14 -0
  344. package/test/mockRoot/deploy/testInstance/testBU/senderProfile/testNew_senderProfile.senderProfile-meta.json +14 -0
  345. package/test/mockRoot/deploy/testInstance/testBU/transactionalEmail/testExisting_temail.transactionalEmail-meta.json +1 -1
  346. package/test/mockRoot/deploy/testInstance/testBU/transactionalEmail/testNew_temail.transactionalEmail-meta.json +1 -1
  347. package/test/mockRoot/deploy/testInstance/testBU/transactionalPush/testExisting_tpush.transactionalPush-meta.json +1 -3
  348. package/test/mockRoot/deploy/testInstance/testBU/transactionalPush/testNew_tpush.transactionalPush-meta.json +1 -3
  349. package/test/mockRoot/deploy/testInstance/testBU/transactionalSMS/testExisting_tsms.transactionalSMS-meta.json +1 -2
  350. package/test/mockRoot/deploy/testInstance/testBU/transactionalSMS/testNew_tsms.transactionalSMS-meta.json +1 -2
  351. package/test/mockRoot/deploy/testInstance/testBU/triggeredSend/testExisting_triggeredSend.triggeredSend-meta.json +4 -5
  352. package/test/mockRoot/deploy/testInstance/testBU/triggeredSend/testNew_triggeredSend.triggeredSend-meta.json +4 -5
  353. package/test/mockRoot/deploy/testInstance/testBU/verification/testExisting_39f6a488-20eb-4ba0-b0b9.verification-meta.json +1 -1
  354. package/test/mockRoot/deploy/testInstance/testBU/verification/testNew_39f6a488-20eb-4ba0-b0b9.verification-meta.json +1 -1
  355. package/test/resourceFactory.js +118 -7
  356. package/test/resources/1111111/automation/v1/queries/get-response.json +6 -0
  357. package/test/resources/1111111/automation/v1/queries/post-response.json +18 -0
  358. package/test/resources/1111111/dataExtension/create-expected.json +4 -7
  359. package/test/resources/1111111/dataExtension/retrieve-expected.json +2 -4
  360. package/test/resources/1111111/dataExtension/update-expected.json +7 -7
  361. package/test/resources/1111111/dataExtension/update-response.xml +3 -1
  362. package/test/resources/1111111/dataFolder/retrieve-ContentType=queryactivity-response.xml +48 -0
  363. package/test/resources/1111111/query/patch_keySuffix-expected.json +11 -0
  364. package/test/resources/1111111/query/patch_keySuffix-expected.sql +4 -0
  365. package/test/resources/9999999/asset/block-1157-retrieve-expected.html +4 -3
  366. package/test/resources/9999999/asset/build-templatebasedemail-expected.json +81 -0
  367. package/test/resources/9999999/asset/build-templatebasedemail-html-expected.html +20 -0
  368. package/test/resources/9999999/asset/build-templatebasedemail-preheader-expected.amp +1 -0
  369. package/test/resources/9999999/asset/create-expected.json +18 -0
  370. package/test/resources/9999999/asset/resolveId-1234-notFound-expected.json +1 -0
  371. package/test/resources/9999999/asset/resolveId-1295064-noPath-expected.json +8 -0
  372. package/test/resources/9999999/asset/resolveId-1295064-withPath-expected.json +8 -0
  373. package/test/resources/9999999/asset/retrieve-templatebasedemail-expected.json +84 -0
  374. package/test/resources/9999999/asset/retrieve-templatebasedemail-html-expected.html +20 -0
  375. package/test/resources/9999999/asset/retrieve-templatebasedemail-preheader-expected.amp +1 -0
  376. package/test/resources/9999999/asset/template-templatebasedemail-expected.json +81 -0
  377. package/test/resources/9999999/asset/template-templatebasedemail-html-expected.html +20 -0
  378. package/test/resources/9999999/asset/template-templatebasedemail-preheader-expected.amp +1 -0
  379. package/test/resources/9999999/asset/testExisting_asset_message-html-rcb-id-expected.html +33 -0
  380. package/test/resources/9999999/asset/testExisting_asset_message-html-rcb-key-expected.html +33 -0
  381. package/test/resources/9999999/asset/testExisting_asset_message-html-rcb-name-expected.html +35 -0
  382. package/test/resources/9999999/asset/testExisting_asset_message-preheader-rcb-id-expected.amp +4 -0
  383. package/test/resources/9999999/asset/testExisting_asset_message-preheader-rcb-key-expected.amp +4 -0
  384. package/test/resources/9999999/asset/testExisting_asset_message-preheader-rcb-name-expected.amp +4 -0
  385. package/test/resources/9999999/asset/testExisting_asset_message-text-rcb-id-expected.amp +4 -0
  386. package/test/resources/9999999/asset/testExisting_asset_message-text-rcb-key-expected.amp +4 -0
  387. package/test/resources/9999999/asset/testExisting_asset_message-text-rcb-name-expected.amp +4 -0
  388. package/test/resources/9999999/asset/v1/content/assets/1295064/get-response.json +1 -1
  389. package/test/resources/9999999/asset/v1/content/assets/5286/get-response.json +48 -0
  390. package/test/resources/9999999/asset/v1/content/assets/5289/get-response.json +198 -0
  391. package/test/resources/9999999/asset/v1/content/assets/808714/get-response.json +4 -3
  392. package/test/resources/9999999/asset/v1/content/assets/950143/delete-response.txt +1 -0
  393. package/test/resources/9999999/asset/v1/content/assets/get-response-customerKey=testExisting_asset.json +105 -0
  394. package/test/resources/9999999/asset/v1/content/assets/post-response.json +59 -0
  395. package/test/resources/9999999/asset/v1/content/assets/query/post-response-assetType.idIN174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,14.json +7 -0
  396. package/test/resources/9999999/asset/v1/content/assets/query/post-response-assetType.idIN193,194,15.json +7 -0
  397. package/test/resources/9999999/asset/v1/content/assets/query/post-response-assetType.idIN195,196,197,198,199,200,201,202,203,210,211,212,213,3.json +46 -0
  398. package/test/resources/9999999/asset/v1/content/assets/query/post-response-assetType.idIN205,206,230,232,1.json +32 -0
  399. package/test/resources/9999999/asset/v1/content/assets/query/{post-response.json → post-response-assetType.idIN207,208,209,5.json} +45 -47
  400. package/test/resources/9999999/asset/v1/content/assets/query/post-response-assetType.idIN214,4.json +35 -0
  401. package/test/resources/9999999/asset/v1/content/assets/query/post-response-assetType.idIN215,216,217,218,219,220,221,222,223,224,225,226,227,228.json +7 -0
  402. package/test/resources/9999999/asset/v1/content/assets/query/post-response-customerKey=mcdev-issue-1157.json +46 -0
  403. package/test/resources/9999999/attributeGroup/retrieve-expected.json +1 -1
  404. package/test/resources/9999999/attributeSet/retrieve-expected.json +3 -3
  405. package/test/resources/9999999/automation/build-expected.json +7 -7
  406. package/test/resources/9999999/automation/create-expected.json +7 -7
  407. package/test/resources/9999999/automation/patch_fixKeys-pause-expected.json +6 -6
  408. package/test/resources/9999999/automation/patch_fixKeys-schedule-expected.json +6 -6
  409. package/test/resources/9999999/automation/retrieve-expected.json +7 -7
  410. package/test/resources/9999999/automation/template-expected.json +7 -7
  411. package/test/resources/9999999/automation/update-expected.json +6 -6
  412. package/test/resources/9999999/automation/v1/dataextracts/56c5370a-f988-4f36-b0ee-0f876573f6d7/delete-response.txt +1 -0
  413. package/test/resources/9999999/automation/v1/filetransfers/72c328ac-f5b0-4e37-91d3-a775666f15a6/delete-response.json +1 -0
  414. package/test/resources/9999999/automation/v1/imports/1ebf557b-372e-eb11-b81b-48df37d1dbd7/get-response.json +78 -0
  415. package/test/resources/9999999/automation/v1/imports/9d16f42c-2260-ed11-b849-48df37d1de8b/delete-response.txt +0 -0
  416. package/test/resources/9999999/automation/v1/imports/9d16f42c-2260-ed11-b849-48df37d1de8b/get-response.json +35 -0
  417. package/test/resources/9999999/automation/v1/imports/9d16f42c-2260-ed11-b849-48df37d1de8b/patch-response.json +14 -10
  418. package/test/resources/9999999/automation/v1/imports/get-response.json +78 -1
  419. package/test/resources/9999999/automation/v1/queries/549f0568-607c-4940-afef-437965094dat/get-response.json +1 -1
  420. package/test/resources/9999999/automation/v1/queries/549f0568-607c-4940-afef-437965094dat_fixKeysSuffix/get-response.json +17 -0
  421. package/test/resources/9999999/automation/v1/queries/549f0568-607c-4940-afef-437965094dat_fixKeysSuffix/patch-response.json +18 -0
  422. package/test/resources/9999999/automation/v1/queries/abcde-607c-4940-afef-437965094dat/get-response.json +17 -0
  423. package/test/resources/9999999/automation/v1/queries/get-response.json +20 -3
  424. package/test/resources/9999999/automation/v1/scripts/39f6a488-20eb-4ba0-b0b9-023725b574e4/delete-response.txt +1 -0
  425. package/test/resources/9999999/automation/v1/scripts/get-response.json +3 -3
  426. package/test/resources/9999999/dataExtension/build-expected.json +3 -4
  427. package/test/resources/9999999/dataExtension/create-expected.json +1 -4
  428. package/test/resources/9999999/dataExtension/retrieve-Name=testExisting_dataExtension-response.xml +4 -4
  429. package/test/resources/9999999/dataExtension/retrieve-expected.json +3 -4
  430. package/test/resources/9999999/dataExtension/retrieve-response.xml +96 -1
  431. package/test/resources/9999999/dataExtension/template-expected.json +3 -4
  432. package/test/resources/9999999/dataExtension/update-expected.json +4 -3
  433. package/test/resources/9999999/dataExtension/update-response.xml +5 -3
  434. package/test/resources/9999999/dataExtensionField/retrieve-response.xml +72 -0
  435. package/test/resources/9999999/dataFolder/retrieve-ContentType=userinitiatedsends-response.xml +48 -0
  436. package/test/resources/9999999/deliveryProfile/get-expected.json +7 -0
  437. package/test/resources/9999999/emailSend/build-expected.json +43 -0
  438. package/test/resources/9999999/emailSend/get-expected.json +43 -0
  439. package/test/resources/9999999/emailSend/patch-expected.json +41 -0
  440. package/test/resources/9999999/emailSend/post-expected.json +41 -0
  441. package/test/resources/9999999/emailSend/template-expected.json +43 -0
  442. package/test/resources/9999999/emailSendDefinition/create-response.xml +98 -0
  443. package/test/resources/9999999/emailSendDefinition/delete-response.xml +36 -0
  444. package/test/resources/9999999/emailSendDefinition/retrieve-IsPlatformObject=falseANDDescriptionnotEqualsSFSendDefinition-response.xml +18 -8
  445. package/test/resources/9999999/emailSendDefinition/update-response.xml +97 -0
  446. package/test/resources/9999999/importDefinition/retrieve-CustomerKey=testExisting_importFile-response.xml +30 -0
  447. package/test/resources/9999999/importDefinition/retrieve-Name=testExisting_importFile-response.xml +30 -0
  448. package/test/resources/9999999/importFile/build-expected.json +11 -6
  449. package/test/resources/9999999/importFile/get-expected.json +13 -7
  450. package/test/resources/9999999/importFile/get-sms-expected.json +79 -0
  451. package/test/resources/9999999/importFile/patch-expected.json +12 -7
  452. package/test/resources/9999999/importFile/post-expected.json +8 -5
  453. package/test/resources/9999999/importFile/template-expected.json +10 -5
  454. package/test/resources/9999999/interaction/v1/eventDefinitions/get-response.json +124 -0
  455. package/test/resources/9999999/interaction/v1/interactions/3c3f4112-9b43-43ca-8a89-aa0375b2c1a2/delete-response.txt +1 -0
  456. package/test/resources/9999999/interaction/v1/interactions/3c3f4112-9b43-43ca-8a89-aa0375b2c1a2/get-response.json +253 -0
  457. package/test/resources/9999999/interaction/v1/interactions/get-response.json +83 -779
  458. package/test/resources/9999999/interaction/v1/interactions/key_testExisting_journey_Multistep/get-response.json +457 -0
  459. package/test/resources/9999999/interaction/v1/interactions/key_testExisting_journey_Quicksend/get-response.json +253 -0
  460. package/test/resources/9999999/interaction/v1/interactions/{key_0b76dccf-594c-b6dc-1acf-10c4493dcb84 → key_testExisting_temail}/get-response.json +5 -5
  461. package/test/resources/9999999/journey/build-expected.json +105 -449
  462. package/test/resources/9999999/journey/get-multistep-expected.json +413 -0
  463. package/test/resources/9999999/journey/get-quicksend-expected.json +232 -0
  464. package/test/resources/9999999/journey/get-quicksend-rcb-id-expected.json +232 -0
  465. package/test/resources/9999999/journey/get-quicksend-rcb-key-expected.json +232 -0
  466. package/test/resources/9999999/journey/get-quicksend-rcb-name-expected.json +232 -0
  467. package/test/resources/9999999/journey/get-transactionalEmail-expected.json +211 -0
  468. package/test/resources/9999999/journey/template-expected.json +105 -449
  469. package/test/resources/9999999/legacy/v1/beta/messaging/deliverypolicy/get-response.json +15 -0
  470. package/test/resources/9999999/legacy/v1/beta/mobile/imports/get-response.json +112 -0
  471. package/test/resources/9999999/legacy/v1/beta/mobile/message/NTQ3Ojc4OjA/get-response.json +1 -1
  472. package/test/resources/9999999/legacy/v1/beta/object/NWQwdnhEU3dFZWVBekJRQzdISWl0QTo0NTow/get-response.json +12 -0
  473. package/test/resources/9999999/list/retrieve-response.xml +13 -0
  474. package/test/resources/9999999/messaging/v1/email/definitions/testExisting_temail/get-response.json +1 -1
  475. package/test/resources/9999999/messaging/v1/email/definitions/testExisting_temail/patch-response.json +1 -1
  476. package/test/resources/9999999/mobileMessage/build-expected.json +2 -5
  477. package/test/resources/9999999/mobileMessage/get-expected.json +2 -5
  478. package/test/resources/9999999/mobileMessage/post-create-expected.json +2 -4
  479. package/test/resources/9999999/mobileMessage/post-update-expected.json +2 -5
  480. package/test/resources/9999999/mobileMessage/template-expected.json +2 -5
  481. package/test/resources/9999999/query/build-expected.json +1 -1
  482. package/test/resources/9999999/query/build-expected.sql +2 -1
  483. package/test/resources/9999999/query/get-expected.json +1 -1
  484. package/test/resources/9999999/query/get-expected.sql +2 -1
  485. package/test/resources/9999999/query/get2-expected.json +1 -1
  486. package/test/resources/9999999/query/patch-expected.json +1 -1
  487. package/test/resources/9999999/query/patch_fixKeys-expected.json +1 -1
  488. package/test/resources/9999999/query/patch_fixKeysSuffix-expected.json +11 -0
  489. package/test/resources/9999999/query/patch_fixKeysSuffix-expected.sql +6 -0
  490. package/test/resources/9999999/query/post-expected.json +1 -1
  491. package/test/resources/9999999/query/template-expected.json +1 -1
  492. package/test/resources/9999999/query/template-expected.sql +2 -1
  493. package/test/resources/9999999/queryDefinition/retrieve-CustomerKey=testExisting_query2ANDStatus=Active-response.xml +30 -0
  494. package/test/resources/9999999/queryDefinition/retrieve-CustomerKey=testExisting_query_fixKeysSuffixANDStatus=Active-response.xml +30 -0
  495. package/test/resources/9999999/script/get_ampincluded-expected.html +5 -0
  496. package/test/resources/9999999/script/get_ampincluded-rcb-id-expected.html +5 -0
  497. package/test/resources/9999999/script/get_ampincluded-rcb-key-expected.html +5 -0
  498. package/test/resources/9999999/script/get_ampincluded-rcb-name-expected.html +5 -0
  499. package/test/resources/9999999/script/get_ampscript-expected.html +6 -1
  500. package/test/resources/9999999/script/get_ampscript-rcb-id-expected.html +8 -0
  501. package/test/resources/9999999/script/get_ampscript-rcb-key-expected.html +8 -0
  502. package/test/resources/9999999/script/get_ampscript-rcb-name-expected.html +10 -0
  503. package/test/resources/9999999/script/get_mixed-expected.html +5 -2
  504. package/test/resources/9999999/script/get_mixed-rcb-id-expected.html +12 -0
  505. package/test/resources/9999999/script/get_mixed-rcb-key-expected.html +12 -0
  506. package/test/resources/9999999/script/get_mixed-rcb-name-expected.html +14 -0
  507. package/test/resources/9999999/sendClassification/build-expected.json +8 -0
  508. package/test/resources/9999999/sendClassification/create-response.xml +51 -0
  509. package/test/resources/9999999/sendClassification/delete-response.xml +36 -0
  510. package/test/resources/9999999/sendClassification/get-expected.json +10 -0
  511. package/test/resources/9999999/sendClassification/patch-expected.json +8 -0
  512. package/test/resources/9999999/sendClassification/post-expected.json +8 -0
  513. package/test/resources/9999999/sendClassification/retrieve-response.xml +86 -0
  514. package/test/resources/9999999/sendClassification/template-expected.json +8 -0
  515. package/test/resources/9999999/sendClassification/update-response.xml +49 -0
  516. package/test/resources/9999999/senderProfile/build-expected.json +14 -0
  517. package/test/resources/9999999/senderProfile/create-response.xml +49 -0
  518. package/test/resources/9999999/senderProfile/delete-response.xml +36 -0
  519. package/test/resources/9999999/senderProfile/get-expected.json +16 -0
  520. package/test/resources/9999999/senderProfile/get-rcb-id-expected.json +16 -0
  521. package/test/resources/9999999/senderProfile/get-rcb-key-expected.json +16 -0
  522. package/test/resources/9999999/senderProfile/get-rcb-name-expected.json +16 -0
  523. package/test/resources/9999999/senderProfile/patch-expected.json +14 -0
  524. package/test/resources/9999999/senderProfile/post-expected.json +14 -0
  525. package/test/resources/9999999/senderProfile/retrieve-CustomerKey=Default-response.xml +44 -0
  526. package/test/resources/9999999/senderProfile/retrieve-CustomerKey=wrong-key-response.xml +26 -0
  527. package/test/resources/9999999/senderProfile/retrieve-response.xml +80 -0
  528. package/test/resources/9999999/senderProfile/template-expected.json +14 -0
  529. package/test/resources/9999999/senderProfile/update-response.xml +47 -0
  530. package/test/resources/9999999/transactionalEmail/build-expected.json +3 -3
  531. package/test/resources/9999999/transactionalEmail/get-expected.json +3 -3
  532. package/test/resources/9999999/transactionalEmail/patch-expected.json +3 -3
  533. package/test/resources/9999999/transactionalEmail/post-expected.json +2 -2
  534. package/test/resources/9999999/transactionalEmail/template-expected.json +3 -3
  535. package/test/resources/9999999/transactionalPush/build-expected.json +1 -1
  536. package/test/resources/9999999/transactionalPush/get-expected.json +1 -1
  537. package/test/resources/9999999/transactionalPush/patch-expected.json +1 -3
  538. package/test/resources/9999999/transactionalPush/post-expected.json +1 -3
  539. package/test/resources/9999999/transactionalPush/template-expected.json +1 -1
  540. package/test/resources/9999999/transactionalSMS/build-expected.amp +1 -1
  541. package/test/resources/9999999/transactionalSMS/build-expected.json +1 -2
  542. package/test/resources/9999999/transactionalSMS/get-expected.amp +1 -1
  543. package/test/resources/9999999/transactionalSMS/get-expected.json +1 -2
  544. package/test/resources/9999999/transactionalSMS/patch-expected.amp +1 -1
  545. package/test/resources/9999999/transactionalSMS/patch-expected.json +1 -2
  546. package/test/resources/9999999/transactionalSMS/post-expected.amp +1 -1
  547. package/test/resources/9999999/transactionalSMS/post-expected.json +1 -2
  548. package/test/resources/9999999/transactionalSMS/template-expected.amp +1 -1
  549. package/test/resources/9999999/transactionalSMS/template-expected.json +1 -2
  550. package/test/resources/9999999/triggeredSend/build-expected.json +5 -6
  551. package/test/resources/9999999/triggeredSend/get-expected.json +5 -6
  552. package/test/resources/9999999/triggeredSend/get-rcb-id-expected.json +29 -0
  553. package/test/resources/9999999/triggeredSend/get-rcb-key-expected.json +29 -0
  554. package/test/resources/9999999/triggeredSend/get-rcb-name-expected.json +29 -0
  555. package/test/resources/9999999/triggeredSend/patch-expected.json +5 -6
  556. package/test/resources/9999999/triggeredSend/post-expected.json +5 -6
  557. package/test/resources/9999999/triggeredSend/template-expected.json +5 -6
  558. package/test/resources/9999999/triggeredSendDefinition/create-response.xml +6 -1
  559. package/test/resources/9999999/triggeredSendDefinition/retrieve-TriggeredSendStatusINNew,Active,Inactive,Moved,Canceled-response.xml +53 -1
  560. package/test/resources/9999999/triggeredSendDefinition/update-response.xml +6 -1
  561. package/test/resources/9999999/verification/build-expected.json +1 -1
  562. package/test/resources/9999999/verification/get-expected.json +1 -1
  563. package/test/resources/9999999/verification/patch-expected.json +1 -1
  564. package/test/resources/9999999/verification/post-expected.json +1 -1
  565. package/test/resources/9999999/verification/template-expected.json +1 -1
  566. package/test/type.asset.test.js +733 -17
  567. package/test/type.attributeGroup.test.js +6 -2
  568. package/test/type.attributeSet.test.js +6 -2
  569. package/test/type.automation.test.js +174 -162
  570. package/test/type.dataExtension.test.js +41 -45
  571. package/test/type.dataExtract.test.js +22 -29
  572. package/test/type.deliveryProfile.test.js +45 -0
  573. package/test/type.emailSend.test.js +144 -0
  574. package/test/type.event.test.js +62 -0
  575. package/test/type.fileTransfer.test.js +21 -29
  576. package/test/type.importFile.test.js +61 -35
  577. package/test/type.journey.test.js +251 -45
  578. package/test/type.mobileKeyword.test.js +46 -54
  579. package/test/type.mobileMessage.test.js +28 -27
  580. package/test/type.query.test.js +303 -124
  581. package/test/type.script.test.js +288 -69
  582. package/test/type.sendClassification.test.js +156 -0
  583. package/test/type.senderProfile.test.js +254 -0
  584. package/test/type.transactionalEmail.test.js +15 -11
  585. package/test/type.transactionalPush.test.js +15 -11
  586. package/test/type.transactionalSMS.test.js +30 -23
  587. package/test/type.triggeredSend.test.js +130 -17
  588. package/test/type.user.test.js +22 -14
  589. package/test/type.verification.test.js +13 -10
  590. package/test/utils.js +76 -21
  591. package/tsconfig.json +21 -0
  592. package/types/mcdev.d.js +190 -66
  593. package/docs/dist/documentation.md +0 -8878
  594. package/test/mockRoot/deploy/testInstance/testBU/journey/testExisting_interaction.interaction-meta.json +0 -576
  595. package/test/mockRoot/deploy/testInstance/testBU/journey/testNew_interaction.interaction-meta.json +0 -266
  596. package/test/resources/9999999/interaction/v1/EventDefinitions/get-response.json +0 -43
  597. package/test/resources/9999999/interaction/v1/interactions/233d4413-922c-4568-85a5-e5cc77efc3be/delete-response.json +0 -1
  598. package/test/resources/9999999/interaction/v1/interactions/key_testExisting_interaction/get-response.json +0 -592
  599. package/test/resources/9999999/interaction/v1/interactions/key_testExisting_interaction/put-response.json +0 -592
  600. package/test/resources/9999999/interaction/v1/interactions/post-response.json +0 -280
  601. package/test/resources/9999999/journey/get-expected.json +0 -576
  602. package/test/resources/9999999/script/get_ampincluded-expected.ssjs +0 -5
@@ -1,15 +1,18 @@
1
- import chai, { assert, expect } from 'chai';
1
+ import * as chai from 'chai';
2
+ const assert = chai.assert;
3
+ const expect = chai.expect;
4
+
2
5
  import chaiFiles from 'chai-files';
3
6
  import cache from '../lib/util/cache.js';
4
7
  import * as testUtils from './utils.js';
5
8
  import handler from '../lib/index.js';
6
9
  chai.use(chaiFiles);
7
- const file = chaiFiles.file;
8
10
 
9
11
  describe('type: transactionalSMS', () => {
10
12
  beforeEach(() => {
11
13
  testUtils.mockSetup();
12
14
  });
15
+
13
16
  afterEach(() => {
14
17
  testUtils.mockReset();
15
18
  });
@@ -19,7 +22,7 @@ describe('type: transactionalSMS', () => {
19
22
  // WHEN
20
23
  await handler.retrieve('testInstance/testBU', ['transactionalSMS']);
21
24
  // THEN
22
- assert.equal(process.exitCode, false, 'retrieve should not have thrown an error');
25
+ assert.equal(process.exitCode, 0, 'retrieve should not have thrown an error');
23
26
  // get results from cache
24
27
  const result = cache.getCache();
25
28
  assert.equal(
@@ -33,9 +36,9 @@ describe('type: transactionalSMS', () => {
33
36
  'returned JSON was not equal expected'
34
37
  );
35
38
  expect(
36
- file(testUtils.getActualFile('testExisting_tsms', 'transactionalSMS', 'amp'))
39
+ await testUtils.getActualFile('testExisting_tsms', 'transactionalSMS', 'amp')
37
40
  ).to.equal(
38
- file(testUtils.getExpectedFile('9999999', 'transactionalSMS', 'get', 'amp'))
41
+ await testUtils.getExpectedFile('9999999', 'transactionalSMS', 'get', 'amp')
39
42
  );
40
43
  assert.equal(
41
44
  testUtils.getAPIHistoryLength(),
@@ -45,15 +48,17 @@ describe('type: transactionalSMS', () => {
45
48
  return;
46
49
  });
47
50
  });
51
+
48
52
  describe('Deploy ================', () => {
49
53
  beforeEach(() => {
50
54
  testUtils.mockSetup(true);
51
55
  });
56
+
52
57
  it('Should create & upsert a transactionalSMS', async () => {
53
58
  // WHEN
54
59
  await handler.deploy('testInstance/testBU', ['transactionalSMS']);
55
60
  // THEN
56
- assert.equal(process.exitCode, false, 'deploy should not have thrown an error');
61
+ assert.equal(process.exitCode, 0, 'deploy should not have thrown an error');
57
62
  // get results from cache
58
63
  const result = cache.getCache();
59
64
  assert.equal(
@@ -68,9 +73,9 @@ describe('type: transactionalSMS', () => {
68
73
  'returned JSON was not equal expected for insert transactionalSMS'
69
74
  );
70
75
  expect(
71
- file(testUtils.getActualFile('testNew_tsms', 'transactionalSMS', 'amp'))
76
+ await testUtils.getActualFile('testNew_tsms', 'transactionalSMS', 'amp')
72
77
  ).to.equal(
73
- file(testUtils.getExpectedFile('9999999', 'transactionalSMS', 'post', 'amp'))
78
+ await testUtils.getExpectedFile('9999999', 'transactionalSMS', 'post', 'amp')
74
79
  );
75
80
  // confirm updated item
76
81
  assert.deepEqual(
@@ -79,9 +84,9 @@ describe('type: transactionalSMS', () => {
79
84
  'returned JSON was not equal expected for update transactionalSMS'
80
85
  );
81
86
  expect(
82
- file(testUtils.getActualFile('testExisting_tsms', 'transactionalSMS', 'amp'))
87
+ await testUtils.getActualFile('testExisting_tsms', 'transactionalSMS', 'amp')
83
88
  ).to.equal(
84
- file(testUtils.getExpectedFile('9999999', 'transactionalSMS', 'patch', 'amp'))
89
+ await testUtils.getExpectedFile('9999999', 'transactionalSMS', 'patch', 'amp')
85
90
  );
86
91
  // check number of API calls
87
92
  assert.equal(
@@ -91,6 +96,7 @@ describe('type: transactionalSMS', () => {
91
96
  );
92
97
  return;
93
98
  });
99
+
94
100
  it('Should NOT change the key during update with --changeKeyValue and instead fail due to missing support', async () => {
95
101
  // WHEN
96
102
  handler.setOptions({ changeKeyValue: 'updatedKey' });
@@ -108,6 +114,7 @@ describe('type: transactionalSMS', () => {
108
114
  return;
109
115
  });
110
116
  });
117
+
111
118
  describe('Templating ================', () => {
112
119
  // it.skip('Should create a transactionalSMS template via retrieveAsTemplate and build it');
113
120
  it('Should create a transactionalSMS template via buildTemplate and build it', async () => {
@@ -120,7 +127,7 @@ describe('type: transactionalSMS', () => {
120
127
  ['testExisting_tsms'],
121
128
  'testSourceMarket'
122
129
  );
123
- assert.equal(process.exitCode, false, 'buildTemplate should not have thrown an error');
130
+ assert.equal(process.exitCode, 0, 'buildTemplate should not have thrown an error');
124
131
 
125
132
  assert.equal(
126
133
  result.transactionalSMS ? Object.keys(result.transactionalSMS).length : 0,
@@ -133,24 +140,22 @@ describe('type: transactionalSMS', () => {
133
140
  'returned template JSON was not equal expected'
134
141
  );
135
142
  expect(
136
- file(
137
- testUtils.getActualTemplateFile('testExisting_tsms', 'transactionalSMS', 'amp')
143
+ await testUtils.getActualTemplateFile(
144
+ 'testExisting_tsms',
145
+ 'transactionalSMS',
146
+ 'amp'
138
147
  )
139
148
  ).to.equal(
140
- file(testUtils.getExpectedFile('9999999', 'transactionalSMS', 'template', 'amp'))
149
+ await testUtils.getExpectedFile('9999999', 'transactionalSMS', 'template', 'amp')
141
150
  );
142
151
  // buildDefinition
143
152
  await handler.buildDefinition(
144
153
  'testInstance/testBU',
145
154
  'transactionalSMS',
146
- 'testExisting_tsms',
155
+ ['testExisting_tsms'],
147
156
  'testTargetMarket'
148
157
  );
149
- assert.equal(
150
- process.exitCode,
151
- false,
152
- 'buildDefinition should not have thrown an error'
153
- );
158
+ assert.equal(process.exitCode, 0, 'buildDefinition should not have thrown an error');
154
159
 
155
160
  assert.deepEqual(
156
161
  await testUtils.getActualDeployJson('testTemplated_tsms', 'transactionalSMS'),
@@ -158,9 +163,9 @@ describe('type: transactionalSMS', () => {
158
163
  'returned deployment JSON was not equal expected'
159
164
  );
160
165
  expect(
161
- file(testUtils.getActualDeployFile('testTemplated_tsms', 'transactionalSMS', 'amp'))
166
+ await testUtils.getActualDeployFile('testTemplated_tsms', 'transactionalSMS', 'amp')
162
167
  ).to.equal(
163
- file(testUtils.getExpectedFile('9999999', 'transactionalSMS', 'build', 'amp'))
168
+ await testUtils.getExpectedFile('9999999', 'transactionalSMS', 'build', 'amp')
164
169
  );
165
170
  assert.equal(
166
171
  testUtils.getAPIHistoryLength(),
@@ -170,18 +175,20 @@ describe('type: transactionalSMS', () => {
170
175
  return;
171
176
  });
172
177
  });
178
+
173
179
  describe('Delete ================', () => {
174
180
  // TODO: add this test
175
181
  it('Should delete the item'); // , async () => {
176
182
  // // WHEN
177
183
  // const isDeleted = await handler.deleteByKey('testInstance/testBU', 'mobileKeyword', 'testExisting_keyword');
178
184
  // // THEN
179
- // assert.equal(process.exitCode, false, 'delete should not have thrown an error');
185
+ // assert.equal(process.exitCode, 0, 'delete should not have thrown an error');
180
186
 
181
187
  // assert.equal(isDeleted, true, 'should have deleted the item');
182
188
  // return;
183
189
  // });
184
190
  });
191
+
185
192
  describe('CI/CD ================', () => {
186
193
  // TODO: add this test
187
194
  it('Should return a list of files based on their type and key'); // , async () => {
@@ -1,4 +1,6 @@
1
- import chai, { assert } from 'chai';
1
+ import * as chai from 'chai';
2
+ const assert = chai.assert;
3
+
2
4
  import chaiFiles from 'chai-files';
3
5
  import cache from '../lib/util/cache.js';
4
6
  import * as testUtils from './utils.js';
@@ -9,6 +11,7 @@ describe('type: triggeredSend', () => {
9
11
  beforeEach(() => {
10
12
  testUtils.mockSetup();
11
13
  });
14
+
12
15
  afterEach(() => {
13
16
  testUtils.mockReset();
14
17
  });
@@ -18,13 +21,13 @@ describe('type: triggeredSend', () => {
18
21
  // WHEN
19
22
  await handler.retrieve('testInstance/testBU', ['triggeredSend']);
20
23
  // THEN
21
- assert.equal(process.exitCode, false, 'retrieve should not have thrown an error');
24
+ assert.equal(process.exitCode, 0, 'retrieve should not have thrown an error');
22
25
  // get results from cache
23
26
  const result = cache.getCache();
24
27
  assert.equal(
25
28
  result.triggeredSend ? Object.keys(result.triggeredSend).length : 0,
26
- 1,
27
- 'only one triggeredSend expected'
29
+ 2,
30
+ 'only 2 triggeredSend expected'
28
31
  );
29
32
  assert.deepEqual(
30
33
  await testUtils.getActualJson('testExisting_triggeredSend', 'triggeredSend'),
@@ -33,26 +36,28 @@ describe('type: triggeredSend', () => {
33
36
  );
34
37
  assert.equal(
35
38
  testUtils.getAPIHistoryLength(),
36
- 10,
39
+ 12,
37
40
  'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests'
38
41
  );
39
42
  return;
40
43
  });
41
44
  });
45
+
42
46
  describe('Deploy ================', () => {
43
47
  beforeEach(() => {
44
48
  testUtils.mockSetup(true);
45
49
  });
50
+
46
51
  it('Should create & upsert a triggeredSend', async () => {
47
52
  // WHEN
48
53
  await handler.deploy('testInstance/testBU', ['triggeredSend']);
49
54
  // THEN
50
- assert.equal(process.exitCode, false, 'deploy should not have thrown an error');
55
+ assert.equal(process.exitCode, 0, 'deploy should not have thrown an error');
51
56
  // get results from cache
52
57
  const result = cache.getCache();
53
58
  assert.equal(
54
59
  result.triggeredSend ? Object.keys(result.triggeredSend).length : 0,
55
- 2,
60
+ 3,
56
61
  'two triggeredSends expected'
57
62
  );
58
63
  // confirm created item
@@ -70,12 +75,13 @@ describe('type: triggeredSend', () => {
70
75
  // check number of API calls
71
76
  assert.equal(
72
77
  testUtils.getAPIHistoryLength(),
73
- 12,
78
+ 14,
74
79
  'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests'
75
80
  );
76
81
  return;
77
82
  });
78
83
  });
84
+
79
85
  describe('Templating ================', () => {
80
86
  it('Should create a triggeredSend template via buildTemplate and build it', async () => {
81
87
  // download first before we test buildTemplate
@@ -87,7 +93,7 @@ describe('type: triggeredSend', () => {
87
93
  ['testExisting_triggeredSend'],
88
94
  'testSourceMarket'
89
95
  );
90
- assert.equal(process.exitCode, false, 'buildTemplate should not have thrown an error');
96
+ assert.equal(process.exitCode, 0, 'buildTemplate should not have thrown an error');
91
97
  assert.equal(
92
98
  result.triggeredSend ? Object.keys(result.triggeredSend).length : 0,
93
99
  1,
@@ -105,14 +111,10 @@ describe('type: triggeredSend', () => {
105
111
  await handler.buildDefinition(
106
112
  'testInstance/testBU',
107
113
  'triggeredSend',
108
- 'testExisting_triggeredSend',
114
+ ['testExisting_triggeredSend'],
109
115
  'testTargetMarket'
110
116
  );
111
- assert.equal(
112
- process.exitCode,
113
- false,
114
- 'buildDefinition should not have thrown an error'
115
- );
117
+ assert.equal(process.exitCode, 0, 'buildDefinition should not have thrown an error');
116
118
  assert.deepEqual(
117
119
  await testUtils.getActualDeployJson('testTemplated_triggeredSend', 'triggeredSend'),
118
120
  await testUtils.getExpectedJson('9999999', 'triggeredSend', 'build'),
@@ -120,12 +122,13 @@ describe('type: triggeredSend', () => {
120
122
  );
121
123
  assert.equal(
122
124
  testUtils.getAPIHistoryLength(),
123
- 10,
125
+ 12,
124
126
  'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests'
125
127
  );
126
128
  return;
127
129
  });
128
130
  });
131
+
129
132
  describe('Delete ================', () => {
130
133
  it('Should delete the item', async () => {
131
134
  // WHEN
@@ -135,19 +138,129 @@ describe('type: triggeredSend', () => {
135
138
  'testExisting_triggeredSend'
136
139
  );
137
140
  // THEN
138
- assert.equal(process.exitCode, false, 'delete should not have thrown an error');
141
+ assert.equal(process.exitCode, 0, 'delete should not have thrown an error');
139
142
 
140
143
  assert.equal(isDeleted, true, 'should have deleted the item');
141
144
  return;
142
145
  });
143
146
  });
147
+
144
148
  describe('Refresh ================', () => {
145
149
  it('Should refresh a triggeredSend by key');
146
150
  });
151
+
147
152
  describe('Start (Execute) ================', () => {
148
153
  it('Should start a triggeredSend by key');
149
154
  });
155
+
150
156
  describe('Pause ================', () => {
151
157
  it('Should pause a triggeredSend by key');
152
158
  });
159
+
160
+ describe('ReplaceContentBlockByX ================', () => {
161
+ it('Should replace references with ContentBlockByName w/o deploy', async () => {
162
+ handler.setOptions({ skipDeploy: true });
163
+
164
+ // WHEN
165
+ const replace = await handler.replaceCbReference(
166
+ 'testInstance/testBU',
167
+ {
168
+ triggeredSend: null,
169
+ },
170
+ 'name'
171
+ );
172
+ // THEN
173
+ assert.equal(process.exitCode, 0, 'retrieve should not have thrown an error');
174
+ // retrieve result
175
+ assert.deepEqual(
176
+ replace['testInstance/testBU'].triggeredSend,
177
+ ['testExisting_triggeredSend_rcb'],
178
+ 'should have found the right triggeredSends that need updating'
179
+ );
180
+
181
+ // check if conversions happened
182
+ assert.deepEqual(
183
+ await testUtils.getActualJson('testExisting_triggeredSend_rcb', 'triggeredSend'),
184
+ await testUtils.getExpectedJson('9999999', 'triggeredSend', 'get-rcb-name'),
185
+ 'returned JSON was not equal expected'
186
+ );
187
+
188
+ assert.equal(
189
+ testUtils.getAPIHistoryLength(),
190
+ 24,
191
+ 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests'
192
+ );
193
+ return;
194
+ });
195
+
196
+ it('Should replace references with ContentBlockById w/o deploy', async () => {
197
+ handler.setOptions({ skipDeploy: true });
198
+
199
+ // WHEN
200
+ const replace = await handler.replaceCbReference(
201
+ 'testInstance/testBU',
202
+ {
203
+ triggeredSend: null,
204
+ },
205
+ 'id'
206
+ );
207
+ // THEN
208
+ assert.equal(process.exitCode, 0, 'retrieve should not have thrown an error');
209
+ // retrieve result
210
+ assert.deepEqual(
211
+ replace['testInstance/testBU'].triggeredSend,
212
+ ['testExisting_triggeredSend_rcb'],
213
+ 'should have found the right triggeredSends that need updating'
214
+ );
215
+
216
+ // check if conversions happened
217
+ assert.deepEqual(
218
+ await testUtils.getActualJson('testExisting_triggeredSend_rcb', 'triggeredSend'),
219
+ await testUtils.getExpectedJson('9999999', 'triggeredSend', 'get-rcb-id'),
220
+ 'returned JSON was not equal expected'
221
+ );
222
+
223
+ assert.equal(
224
+ testUtils.getAPIHistoryLength(),
225
+ 24,
226
+ 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests'
227
+ );
228
+ return;
229
+ });
230
+
231
+ it('Should replace references with ContentBlockByKey w/o deploy', async () => {
232
+ handler.setOptions({ skipDeploy: true });
233
+
234
+ // WHEN
235
+ const replace = await handler.replaceCbReference(
236
+ 'testInstance/testBU',
237
+ {
238
+ triggeredSend: null,
239
+ },
240
+ 'key'
241
+ );
242
+ // THEN
243
+ assert.equal(process.exitCode, 0, 'retrieve should not have thrown an error');
244
+ // retrieve result
245
+ assert.deepEqual(
246
+ replace['testInstance/testBU'].triggeredSend,
247
+ ['testExisting_triggeredSend_rcb'],
248
+ 'should have found the right assets that need updating'
249
+ );
250
+
251
+ // check if conversions happened
252
+ assert.deepEqual(
253
+ await testUtils.getActualJson('testExisting_triggeredSend_rcb', 'triggeredSend'),
254
+ await testUtils.getExpectedJson('9999999', 'triggeredSend', 'get-rcb-key'),
255
+ 'returned JSON was not equal expected'
256
+ );
257
+
258
+ assert.equal(
259
+ testUtils.getAPIHistoryLength(),
260
+ 24,
261
+ 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests'
262
+ );
263
+ return;
264
+ });
265
+ });
153
266
  });
@@ -1,4 +1,7 @@
1
- import chai, { assert, expect } from 'chai';
1
+ import * as chai from 'chai';
2
+ const assert = chai.assert;
3
+ const expect = chai.expect;
4
+
2
5
  import chaiFiles from 'chai-files';
3
6
  import cache from '../lib/util/cache.js';
4
7
  import * as testUtils from './utils.js';
@@ -11,15 +14,17 @@ describe('type: user', () => {
11
14
  beforeEach(() => {
12
15
  testUtils.mockSetup();
13
16
  });
17
+
14
18
  afterEach(() => {
15
19
  testUtils.mockReset();
16
20
  });
21
+
17
22
  describe('Retrieve ================', () => {
18
23
  it('Should retrieve a user', async () => {
19
24
  // WHEN
20
25
  await handler.retrieve('testInstance/_ParentBU_', ['user']);
21
26
  // THEN
22
- assert.equal(process.exitCode, false, 'retrieve should not have thrown an error');
27
+ assert.equal(process.exitCode, 0, 'retrieve should not have thrown an error');
23
28
  // get results from cache
24
29
  const result = cache.getCache();
25
30
  assert.equal(
@@ -35,9 +40,11 @@ describe('type: user', () => {
35
40
  );
36
41
  // check if MD file was created and equals expectations
37
42
  // ! this test needs to update the lastLoginDate counter because it changes with every passing day
38
- const expectedFile = await File.readFile(
39
- testUtils.getExpectedFile('1111111', 'user', 'retrieve', 'md'),
40
- { encoding: 'utf8' }
43
+ const expectedFile = await testUtils.getExpectedFile(
44
+ '1111111',
45
+ 'user',
46
+ 'retrieve',
47
+ 'md'
41
48
  );
42
49
  const regexFindDaysSinceLogin =
43
50
  /\| (\d*) (seconds|minutes|days|weeks|months|years){1} \|/g;
@@ -58,11 +65,12 @@ describe('type: user', () => {
58
65
  );
59
66
  return;
60
67
  });
68
+
61
69
  it('Should retrieve a specific user but not run document', async () => {
62
70
  // WHEN
63
71
  await handler.retrieve('testInstance/_ParentBU_', ['user'], ['testExisting_user']);
64
72
  // THEN
65
- assert.equal(process.exitCode, false, 'retrieve should not have thrown an error');
73
+ assert.equal(process.exitCode, 0, 'retrieve should not have thrown an error');
66
74
 
67
75
  // because user is single-document-type we would not want to find an md file when we retrieve specific keys. only the generic retrieve updates it
68
76
  expect(file(`./docs/user/testInstance.users.md`)).to.not.exist;
@@ -75,10 +83,12 @@ describe('type: user', () => {
75
83
  return;
76
84
  });
77
85
  });
86
+
78
87
  describe('Deploy ================', () => {
79
88
  beforeEach(() => {
80
89
  testUtils.mockSetup(true);
81
90
  });
91
+
82
92
  it('Should create & upsert a user', async () => {
83
93
  // WHEN
84
94
  const expectedCache = [
@@ -89,7 +99,7 @@ describe('type: user', () => {
89
99
  ];
90
100
  await handler.deploy('testInstance/_ParentBU_', ['user'], expectedCache);
91
101
  // THEN
92
- assert.equal(process.exitCode, false, 'deploy should not have thrown an error');
102
+ assert.equal(process.exitCode, 0, 'deploy should not have thrown an error');
93
103
 
94
104
  // get results from cache
95
105
  const result = cache.getCache();
@@ -127,6 +137,7 @@ describe('type: user', () => {
127
137
  );
128
138
  return;
129
139
  });
140
+
130
141
  it('Should not deploy user with Marketing Cloud role', async () => {
131
142
  // WHEN
132
143
  const expectedCache = [
@@ -160,6 +171,7 @@ describe('type: user', () => {
160
171
  return;
161
172
  });
162
173
  });
174
+
163
175
  describe('Templating ================', () => {
164
176
  // it('Should create a user template via retrieveAsTemplate and build it', async () => {});
165
177
  it('Should create a user template via buildTemplate and build it', async () => {
@@ -172,7 +184,7 @@ describe('type: user', () => {
172
184
  ['testExisting_user'],
173
185
  'testSourceMarket'
174
186
  );
175
- assert.equal(process.exitCode, false, 'buildTemplate should not have thrown an error');
187
+ assert.equal(process.exitCode, 0, 'buildTemplate should not have thrown an error');
176
188
  // WHEN
177
189
  assert.equal(
178
190
  result.user ? Object.keys(result.user).length : 0,
@@ -188,14 +200,10 @@ describe('type: user', () => {
188
200
  await handler.buildDefinition(
189
201
  'testInstance/_ParentBU_',
190
202
  'user',
191
- 'testExisting_user',
203
+ ['testExisting_user'],
192
204
  'testTargetMarket'
193
205
  );
194
- assert.equal(
195
- process.exitCode,
196
- false,
197
- 'buildDefinition should not have thrown an error'
198
- );
206
+ assert.equal(process.exitCode, 0, 'buildDefinition should not have thrown an error');
199
207
 
200
208
  assert.deepEqual(
201
209
  await testUtils.getActualDeployJson('testTemplated_user', 'user', '_ParentBU_'),
@@ -1,4 +1,6 @@
1
- import chai, { assert } from 'chai';
1
+ import * as chai from 'chai';
2
+ const assert = chai.assert;
3
+
2
4
  import chaiFiles from 'chai-files';
3
5
  import cache from '../lib/util/cache.js';
4
6
  import * as testUtils from './utils.js';
@@ -9,6 +11,7 @@ describe('type: verification', () => {
9
11
  beforeEach(() => {
10
12
  testUtils.mockSetup();
11
13
  });
14
+
12
15
  afterEach(() => {
13
16
  testUtils.mockReset();
14
17
  });
@@ -18,7 +21,7 @@ describe('type: verification', () => {
18
21
  // WHEN
19
22
  const retrieved = await handler.retrieve('testInstance/testBU', ['verification']);
20
23
  // THEN
21
- assert.equal(process.exitCode, false, 'retrieve should not have thrown an error');
24
+ assert.equal(process.exitCode, 0, 'retrieve should not have thrown an error');
22
25
  // get results from cache
23
26
  const result = cache.getCache();
24
27
  assert.equal(
@@ -50,16 +53,18 @@ describe('type: verification', () => {
50
53
  return;
51
54
  });
52
55
  });
56
+
53
57
  describe('Deploy ================', () => {
54
58
  beforeEach(() => {
55
59
  testUtils.mockSetup(true);
56
60
  });
61
+
57
62
  it('Should create & upsert a verification', async () => {
58
63
  // WHEN
59
64
 
60
65
  const deployed = await handler.deploy('testInstance/testBU', ['verification']);
61
66
  // THEN
62
- assert.equal(process.exitCode, false, 'deploy should not have thrown an error');
67
+ assert.equal(process.exitCode, 0, 'deploy should not have thrown an error');
63
68
  // get results from cache
64
69
  const result = cache.getCache();
65
70
  assert.equal(
@@ -98,6 +103,7 @@ describe('type: verification', () => {
98
103
  return;
99
104
  });
100
105
  });
106
+
101
107
  describe('Templating ================', () => {
102
108
  it('Should create a verification template via buildTemplate and build it', async () => {
103
109
  // download first before we test buildTemplate
@@ -109,7 +115,7 @@ describe('type: verification', () => {
109
115
  ['testExisting_39f6a488-20eb-4ba0-b0b9'],
110
116
  'testSourceMarket'
111
117
  );
112
- assert.equal(process.exitCode, false, 'buildTemplate should not have thrown an error');
118
+ assert.equal(process.exitCode, 0, 'buildTemplate should not have thrown an error');
113
119
  assert.equal(
114
120
  result.verification ? Object.keys(result.verification).length : 0,
115
121
  1,
@@ -127,14 +133,10 @@ describe('type: verification', () => {
127
133
  await handler.buildDefinition(
128
134
  'testInstance/testBU',
129
135
  'verification',
130
- 'testExisting_39f6a488-20eb-4ba0-b0b9',
136
+ ['testExisting_39f6a488-20eb-4ba0-b0b9'],
131
137
  'testTargetMarket'
132
138
  );
133
- assert.equal(
134
- process.exitCode,
135
- false,
136
- 'buildDefinition should not have thrown an error'
137
- );
139
+ assert.equal(process.exitCode, 0, 'buildDefinition should not have thrown an error');
138
140
  assert.deepEqual(
139
141
  await testUtils.getActualDeployJson(
140
142
  'testTemplated_39f6a488-20eb-4ba0-b0b9',
@@ -151,6 +153,7 @@ describe('type: verification', () => {
151
153
  return;
152
154
  });
153
155
  });
156
+
154
157
  describe('Delete ================', () => {
155
158
  it('Should delete the item', async () => {
156
159
  // WHEN