mcdev 7.0.4 → 7.1.1
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.
- package/.github/ISSUE_TEMPLATE/bug.yml +2 -0
- package/.husky/post-checkout +1 -1
- package/.husky/post-merge +7 -1
- package/.husky/pre-commit +2 -0
- package/@types/lib/Builder.d.ts.map +1 -1
- package/@types/lib/Deployer.d.ts +3 -0
- package/@types/lib/Deployer.d.ts.map +1 -1
- package/@types/lib/Retriever.d.ts.map +1 -1
- package/@types/lib/index.d.ts +70 -19
- package/@types/lib/index.d.ts.map +1 -1
- package/@types/lib/metadataTypes/Asset.d.ts +107 -16
- package/@types/lib/metadataTypes/Asset.d.ts.map +1 -1
- package/@types/lib/metadataTypes/AttributeGroup.d.ts +3 -0
- package/@types/lib/metadataTypes/AttributeGroup.d.ts.map +1 -1
- package/@types/lib/metadataTypes/AttributeSet.d.ts +80 -0
- package/@types/lib/metadataTypes/AttributeSet.d.ts.map +1 -1
- package/@types/lib/metadataTypes/Automation.d.ts +11 -0
- package/@types/lib/metadataTypes/Automation.d.ts.map +1 -1
- package/@types/lib/metadataTypes/Campaign.d.ts +1 -0
- package/@types/lib/metadataTypes/Campaign.d.ts.map +1 -1
- package/@types/lib/metadataTypes/ContentArea.d.ts +1 -0
- package/@types/lib/metadataTypes/ContentArea.d.ts.map +1 -1
- package/@types/lib/metadataTypes/DataExtension.d.ts +5 -2
- package/@types/lib/metadataTypes/DataExtension.d.ts.map +1 -1
- package/@types/lib/metadataTypes/DataExtensionField.d.ts +3 -4
- package/@types/lib/metadataTypes/DataExtensionField.d.ts.map +1 -1
- package/@types/lib/metadataTypes/DataExtensionTemplate.d.ts +1 -0
- package/@types/lib/metadataTypes/DataExtensionTemplate.d.ts.map +1 -1
- package/@types/lib/metadataTypes/DataExtract.d.ts +1 -0
- package/@types/lib/metadataTypes/DataExtract.d.ts.map +1 -1
- package/@types/lib/metadataTypes/DataExtractType.d.ts +1 -0
- package/@types/lib/metadataTypes/DataExtractType.d.ts.map +1 -1
- package/@types/lib/metadataTypes/DeliveryProfile.d.ts +1 -0
- package/@types/lib/metadataTypes/DeliveryProfile.d.ts.map +1 -1
- package/@types/lib/metadataTypes/Discovery.d.ts +1 -0
- package/@types/lib/metadataTypes/Discovery.d.ts.map +1 -1
- package/@types/lib/metadataTypes/Email.d.ts +1 -0
- package/@types/lib/metadataTypes/Email.d.ts.map +1 -1
- package/@types/lib/metadataTypes/EmailSend.d.ts +9 -1
- package/@types/lib/metadataTypes/EmailSend.d.ts.map +1 -1
- package/@types/lib/metadataTypes/Event.d.ts +99 -0
- package/@types/lib/metadataTypes/Event.d.ts.map +1 -1
- package/@types/lib/metadataTypes/FileLocation.d.ts +1 -0
- package/@types/lib/metadataTypes/FileLocation.d.ts.map +1 -1
- package/@types/lib/metadataTypes/FileTransfer.d.ts +1 -0
- package/@types/lib/metadataTypes/FileTransfer.d.ts.map +1 -1
- package/@types/lib/metadataTypes/Filter.d.ts +1 -0
- package/@types/lib/metadataTypes/Filter.d.ts.map +1 -1
- package/@types/lib/metadataTypes/Folder.d.ts +39 -25
- package/@types/lib/metadataTypes/Folder.d.ts.map +1 -1
- package/@types/lib/metadataTypes/ImportFile.d.ts +30 -1
- package/@types/lib/metadataTypes/ImportFile.d.ts.map +1 -1
- package/@types/lib/metadataTypes/Journey.d.ts +123 -3
- package/@types/lib/metadataTypes/Journey.d.ts.map +1 -1
- package/@types/lib/metadataTypes/List.d.ts +1 -0
- package/@types/lib/metadataTypes/List.d.ts.map +1 -1
- package/@types/lib/metadataTypes/MetadataType.d.ts +50 -3
- package/@types/lib/metadataTypes/MetadataType.d.ts.map +1 -1
- package/@types/lib/metadataTypes/MobileCode.d.ts +1 -0
- package/@types/lib/metadataTypes/MobileCode.d.ts.map +1 -1
- package/@types/lib/metadataTypes/MobileKeyword.d.ts +9 -0
- package/@types/lib/metadataTypes/MobileKeyword.d.ts.map +1 -1
- package/@types/lib/metadataTypes/MobileMessage.d.ts +4 -0
- package/@types/lib/metadataTypes/MobileMessage.d.ts.map +1 -1
- package/@types/lib/metadataTypes/Query.d.ts +3 -0
- package/@types/lib/metadataTypes/Query.d.ts.map +1 -1
- package/@types/lib/metadataTypes/Role.d.ts +1 -0
- package/@types/lib/metadataTypes/Role.d.ts.map +1 -1
- package/@types/lib/metadataTypes/Script.d.ts +3 -1
- package/@types/lib/metadataTypes/Script.d.ts.map +1 -1
- package/@types/lib/metadataTypes/SendClassification.d.ts +3 -0
- package/@types/lib/metadataTypes/SendClassification.d.ts.map +1 -1
- package/@types/lib/metadataTypes/SenderProfile.d.ts +1 -6
- package/@types/lib/metadataTypes/SenderProfile.d.ts.map +1 -1
- package/@types/lib/metadataTypes/TransactionalEmail.d.ts +6 -0
- package/@types/lib/metadataTypes/TransactionalEmail.d.ts.map +1 -1
- package/@types/lib/metadataTypes/TransactionalMessage.d.ts +1 -0
- package/@types/lib/metadataTypes/TransactionalMessage.d.ts.map +1 -1
- package/@types/lib/metadataTypes/TransactionalPush.d.ts +3 -0
- package/@types/lib/metadataTypes/TransactionalPush.d.ts.map +1 -1
- package/@types/lib/metadataTypes/TransactionalSMS.d.ts +4 -0
- package/@types/lib/metadataTypes/TransactionalSMS.d.ts.map +1 -1
- package/@types/lib/metadataTypes/TriggeredSend.d.ts +6 -6
- package/@types/lib/metadataTypes/TriggeredSend.d.ts.map +1 -1
- package/@types/lib/metadataTypes/User.d.ts +1 -0
- package/@types/lib/metadataTypes/User.d.ts.map +1 -1
- package/@types/lib/metadataTypes/Verification.d.ts +3 -0
- package/@types/lib/metadataTypes/Verification.d.ts.map +1 -1
- package/@types/lib/metadataTypes/definitions/Asset.definition.d.ts +78 -14
- package/@types/lib/metadataTypes/definitions/AttributeGroup.definition.d.ts +3 -0
- package/@types/lib/metadataTypes/definitions/AttributeSet.definition.d.ts +80 -0
- package/@types/lib/metadataTypes/definitions/Automation.definition.d.ts +16 -0
- package/@types/lib/metadataTypes/definitions/Campaign.definition.d.ts +1 -0
- package/@types/lib/metadataTypes/definitions/ContentArea.definition.d.ts +1 -0
- package/@types/lib/metadataTypes/definitions/DataExtension.definition.d.ts +1 -0
- package/@types/lib/metadataTypes/definitions/DataExtensionField.definition.d.ts +1 -0
- package/@types/lib/metadataTypes/definitions/DataExtensionTemplate.definition.d.ts +1 -0
- package/@types/lib/metadataTypes/definitions/DataExtract.definition.d.ts +1 -0
- package/@types/lib/metadataTypes/definitions/DataExtractType.definition.d.ts +1 -0
- package/@types/lib/metadataTypes/definitions/DeliveryProfile.definition.d.ts +1 -0
- package/@types/lib/metadataTypes/definitions/Discovery.definition.d.ts +1 -0
- package/@types/lib/metadataTypes/definitions/Email.definition.d.ts +1 -0
- package/@types/lib/metadataTypes/definitions/EmailSend.definition.d.ts +9 -1
- package/@types/lib/metadataTypes/definitions/Event.definition.d.ts +99 -0
- package/@types/lib/metadataTypes/definitions/FileLocation.definition.d.ts +1 -0
- package/@types/lib/metadataTypes/definitions/FileTransfer.definition.d.ts +1 -0
- package/@types/lib/metadataTypes/definitions/Filter.definition.d.ts +1 -0
- package/@types/lib/metadataTypes/definitions/Folder.definition.d.ts +1 -0
- package/@types/lib/metadataTypes/definitions/ImportFile.definition.d.ts +30 -1
- package/@types/lib/metadataTypes/definitions/Journey.definition.d.ts +94 -0
- package/@types/lib/metadataTypes/definitions/List.definition.d.ts +1 -0
- package/@types/lib/metadataTypes/definitions/MobileCode.definition.d.ts +1 -0
- package/@types/lib/metadataTypes/definitions/MobileKeyword.definition.d.ts +9 -0
- package/@types/lib/metadataTypes/definitions/MobileMessage.definition.d.ts +4 -0
- package/@types/lib/metadataTypes/definitions/Query.definition.d.ts +3 -0
- package/@types/lib/metadataTypes/definitions/Role.definition.d.ts +1 -0
- package/@types/lib/metadataTypes/definitions/Script.definition.d.ts +1 -0
- package/@types/lib/metadataTypes/definitions/SendClassification.definition.d.ts +3 -0
- package/@types/lib/metadataTypes/definitions/SenderProfile.definition.d.ts +1 -0
- package/@types/lib/metadataTypes/definitions/TransactionalEmail.definition.d.ts +6 -0
- package/@types/lib/metadataTypes/definitions/TransactionalMessage.definition.d.ts +1 -0
- package/@types/lib/metadataTypes/definitions/TransactionalPush.definition.d.ts +3 -0
- package/@types/lib/metadataTypes/definitions/TransactionalSMS.definition.d.ts +4 -0
- package/@types/lib/metadataTypes/definitions/TriggeredSend.definition.d.ts +6 -0
- package/@types/lib/metadataTypes/definitions/User.definition.d.ts +1 -0
- package/@types/lib/metadataTypes/definitions/Verification.definition.d.ts +3 -0
- package/@types/lib/util/cache.d.ts +10 -0
- package/@types/lib/util/cache.d.ts.map +1 -1
- package/@types/lib/util/cli.d.ts +3 -6
- package/@types/lib/util/cli.d.ts.map +1 -1
- package/@types/lib/util/config.d.ts.map +1 -1
- package/@types/lib/util/devops.d.ts.map +1 -1
- package/@types/lib/util/file.d.ts.map +1 -1
- package/@types/lib/util/init.config.d.ts.map +1 -1
- package/@types/lib/util/init.d.ts.map +1 -1
- package/@types/lib/util/init.git.d.ts.map +1 -1
- package/@types/lib/util/replaceContentBlockReference.d.ts +27 -4
- package/@types/lib/util/replaceContentBlockReference.d.ts.map +1 -1
- package/@types/lib/util/util.d.ts +32 -3
- package/@types/lib/util/util.d.ts.map +1 -1
- package/@types/types/mcdev.d.d.ts +87 -0
- package/@types/types/mcdev.d.d.ts.map +1 -1
- package/boilerplate/files/.vscode/settings.json +1 -0
- package/boilerplate/forcedUpdates.json +4 -0
- package/boilerplate/gitignore-template +0 -1
- package/lib/Builder.js +13 -8
- package/lib/Deployer.js +15 -7
- package/lib/Retriever.js +13 -2
- package/lib/cli.js +179 -14
- package/lib/index.js +543 -205
- package/lib/metadataTypes/Asset.js +469 -218
- package/lib/metadataTypes/Automation.js +34 -0
- package/lib/metadataTypes/DataExtension.js +34 -29
- package/lib/metadataTypes/DataExtensionField.js +2 -2
- package/lib/metadataTypes/Event.js +28 -2
- package/lib/metadataTypes/Folder.js +63 -48
- package/lib/metadataTypes/ImportFile.js +70 -28
- package/lib/metadataTypes/Journey.js +475 -95
- package/lib/metadataTypes/MetadataType.js +280 -61
- package/lib/metadataTypes/MobileKeyword.js +12 -1
- package/lib/metadataTypes/Script.js +4 -3
- package/lib/metadataTypes/SenderProfile.js +17 -5
- package/lib/metadataTypes/TriggeredSend.js +20 -5
- package/lib/metadataTypes/definitions/Asset.definition.js +66 -4
- package/lib/metadataTypes/definitions/AttributeGroup.definition.js +1 -0
- package/lib/metadataTypes/definitions/AttributeSet.definition.js +86 -0
- package/lib/metadataTypes/definitions/Automation.definition.js +9 -0
- package/lib/metadataTypes/definitions/Campaign.definition.js +1 -0
- package/lib/metadataTypes/definitions/ContentArea.definition.js +1 -0
- package/lib/metadataTypes/definitions/DataExtension.definition.js +1 -0
- package/lib/metadataTypes/definitions/DataExtensionField.definition.js +1 -0
- package/lib/metadataTypes/definitions/DataExtensionTemplate.definition.js +1 -0
- package/lib/metadataTypes/definitions/DataExtract.definition.js +2 -1
- package/lib/metadataTypes/definitions/DataExtractType.definition.js +1 -0
- package/lib/metadataTypes/definitions/DeliveryProfile.definition.js +1 -0
- package/lib/metadataTypes/definitions/Discovery.definition.js +1 -0
- package/lib/metadataTypes/definitions/Email.definition.js +1 -0
- package/lib/metadataTypes/definitions/EmailSend.definition.js +9 -1
- package/lib/metadataTypes/definitions/Event.definition.js +97 -96
- package/lib/metadataTypes/definitions/FileLocation.definition.js +1 -0
- package/lib/metadataTypes/definitions/FileTransfer.definition.js +4 -0
- package/lib/metadataTypes/definitions/Filter.definition.js +1 -0
- package/lib/metadataTypes/definitions/Folder.definition.js +10 -8
- package/lib/metadataTypes/definitions/ImportFile.definition.js +37 -2
- package/lib/metadataTypes/definitions/Journey.definition.js +111 -2
- package/lib/metadataTypes/definitions/List.definition.js +1 -0
- package/lib/metadataTypes/definitions/MobileCode.definition.js +1 -0
- package/lib/metadataTypes/definitions/MobileKeyword.definition.js +7 -0
- package/lib/metadataTypes/definitions/MobileMessage.definition.js +9 -0
- package/lib/metadataTypes/definitions/Query.definition.js +3 -0
- package/lib/metadataTypes/definitions/Role.definition.js +1 -0
- package/lib/metadataTypes/definitions/Script.definition.js +1 -0
- package/lib/metadataTypes/definitions/SendClassification.definition.js +4 -0
- package/lib/metadataTypes/definitions/SenderProfile.definition.js +1 -0
- package/lib/metadataTypes/definitions/TransactionalEmail.definition.js +7 -0
- package/lib/metadataTypes/definitions/TransactionalMessage.definition.js +1 -0
- package/lib/metadataTypes/definitions/TransactionalPush.definition.js +3 -0
- package/lib/metadataTypes/definitions/TransactionalSMS.definition.js +4 -0
- package/lib/metadataTypes/definitions/TriggeredSend.definition.js +12 -5
- package/lib/metadataTypes/definitions/User.definition.js +3 -0
- package/lib/metadataTypes/definitions/Verification.definition.js +1 -0
- package/lib/util/cache.js +35 -0
- package/lib/util/cli.js +96 -139
- package/lib/util/config.js +11 -19
- package/lib/util/devops.js +41 -41
- package/lib/util/file.js +1 -12
- package/lib/util/init.config.js +6 -10
- package/lib/util/init.git.js +43 -57
- package/lib/util/init.js +35 -59
- package/lib/util/replaceContentBlockReference.js +107 -60
- package/lib/util/util.js +90 -4
- package/package.json +14 -13
- package/test/general.test.js +1121 -167
- package/test/mockRoot/.mcdevrc.json +1 -1
- package/test/mockRoot/deploy/testInstance/testBU/event/testNew_event_withExistingDE.event-meta.json +1 -0
- package/test/mockRoot/deploy/testInstance/testBU/event/testNew_event_withSchema.event-meta.json +1 -0
- package/test/mockRoot/deploy/testInstance/testBU/mobileKeyword/4912312345678.TESTNEW_KEYWORD.mobileKeyword-meta.json +1 -0
- package/test/mockRoot/deploy/testInstance/testBU/mobileKeyword/4912312345678.TESTNEW_KEYWORD_BLOCKED.mobileKeyword-meta.json +1 -0
- package/test/resourceFactory.js +43 -11
- package/test/resources/1111111/dataFolder/retrieve-ContentTypeINshared_data,shared_dataextension,shared_salesforcedataextension,synchronizeddataextension-response.xml +364 -0
- package/test/resources/9999999/asset/{block-1157-retrieve-expected.html → build-asset_htmlblock-expected.html} +1 -1
- package/test/resources/9999999/asset/build-asset_htmlblock-expected.json +29 -0
- package/test/resources/9999999/asset/build-templatebasedemail-expected.json +65 -0
- package/test/resources/9999999/asset/resolveId-1295064-noPath-expected.json +3 -3
- package/test/resources/9999999/asset/resolveId-1295064-withPath-expected.json +3 -3
- package/test/resources/9999999/asset/retrieve-templatebasedemail-expected.json +65 -0
- package/test/resources/9999999/asset/template-emailTemplate-expected.json +20 -0
- package/test/resources/9999999/asset/template-templatebasedemail-expected.json +65 -0
- package/test/resources/9999999/asset/template-testExisting_asset_htmlblock-expected.json +29 -0
- package/test/resources/9999999/asset/testExisting_asset_htmlblock-retrieve-expected.html +23 -0
- package/test/resources/9999999/asset/{block-1157-retrieve-expected.json → testExisting_asset_htmlblock-retrieve-expected.json} +3 -3
- package/test/resources/9999999/asset/testExisting_asset_message-html-rcb-key-expected.html +6 -6
- package/test/resources/9999999/asset/testExisting_asset_message-preheader-rcb-id-expected.amp +1 -1
- package/test/resources/9999999/asset/testExisting_asset_message-preheader-rcb-key-expected.amp +4 -4
- package/test/resources/9999999/asset/testExisting_asset_message-preheader-rcb-name-expected.amp +1 -1
- package/test/resources/9999999/asset/testExisting_asset_message-text-rcb-key-expected.amp +4 -4
- package/test/resources/9999999/asset/v1/content/assets/1295064/get-response.json +4 -4
- package/test/resources/9999999/asset/v1/content/assets/1295065/get-response.json +60 -0
- package/test/resources/9999999/asset/v1/content/assets/1295066/get-response.json +60 -0
- package/test/resources/9999999/asset/v1/content/assets/5289/get-response.json +75 -0
- package/test/resources/9999999/asset/v1/content/assets/808714/get-response.json +3 -3
- package/test/resources/9999999/asset/v1/content/assets/950143/get-response.json +97 -0
- package/test/resources/9999999/asset/v1/content/assets/get-response-customerKey=testExisting_asset.json +1 -1
- 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 +78 -2
- package/test/resources/9999999/asset/v1/content/assets/query/post-response-assetType.idIN205,206,230,232,1,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,14,193,194,15,195,196,197,198,199,200,201,202,203,210,211,212,213,3,207,208,209,5,214,4,215,216.json +370 -0
- package/test/resources/9999999/asset/v1/content/assets/query/post-response-assetType.idIN205,206,230,232,1,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,14,193,194,15,195,196,197,198,199,200,201,202,203,210,211,212,213,3,215,216,217,218,219,220,221,222.json +243 -0
- package/test/resources/9999999/asset/v1/content/assets/query/post-response-assetType.idIN205,206,230,232,1,207,208,209,5.json +229 -0
- package/test/resources/9999999/asset/v1/content/assets/query/post-response-assetType.idIN205,206,230,232,1.json +98 -1
- package/test/resources/9999999/asset/v1/content/assets/query/post-response-assetType.idIN217,218,219,220,221,222,223,224,225,226,227,228.json +7 -0
- package/test/resources/9999999/asset/v1/content/assets/query/post-response-assetType.idIN223,224,225,226,227,228,214,4.json +35 -0
- package/test/resources/9999999/asset/v1/content/assets/query/post-response-assetType.idIN223,224,225,226,227,228.json +7 -0
- package/test/resources/9999999/asset/v1/content/assets/query/{post-response-customerKey=mcdev-issue-1157.json → post-response-customerKey=testExisting_asset_htmlblock.json} +2 -2
- package/test/resources/9999999/automation/v1/imports/d2474efb-a449-ef11-b876-f40343c95928/get-response.json +37 -0
- package/test/resources/9999999/automation/v1/imports/get-response.json +32 -1
- package/test/resources/9999999/automation/v1/queries/get-response-Name=testExisting_query.json +24 -0
- package/test/resources/9999999/automation/v1/scripts/get-response-name=testExisting_script.json +17 -0
- package/test/resources/9999999/automation/v1/scripts/get-response.json +2 -2
- package/test/resources/9999999/dataFolder/retrieve-ContentType=asset-shared-QAA-response.xml +70 -0
- package/test/resources/9999999/dataFolder/retrieve-ContentType=asset-shared-response.xml +70 -0
- package/test/resources/9999999/dataFolder/retrieve-ContentType=journey-response.xml +48 -0
- package/test/resources/9999999/dataFolder/retrieve-ContentTypeINasset,asset-sha,automatio,dataexten,hidden,journey,list,mysubs,publicati,queryacti,salesforc,shared_da,shared_da,shared_sa,ssjsactiv,synchroni,triggered,triggered,useriniti-response.xml +519 -0
- package/test/resources/9999999/dataFolder/retrieve-ContentTypeINasset,asset-sha,dataexten,salesforc,shared_da,shared_da,shared_sa,synchroni,automatio,useriniti,journey,mysubs,list,publicati,queryacti,ssjsactiv,triggered,triggered-response.xml +519 -0
- package/test/resources/9999999/dataFolder/retrieve-ContentTypeINasset,asset-shared,journey-response.xml +92 -0
- package/test/resources/9999999/dataFolder/retrieve-ContentTypeINasset,asset-shared,shared_data,shared_dataextension,shared_salesforcedataextension,synchronizeddataextension-QAA-response.xml +115 -0
- package/test/resources/9999999/dataFolder/retrieve-ContentTypeINasset,asset-shared,ssjsactivity-response.xml +92 -0
- package/test/resources/9999999/dataFolder/retrieve-ContentTypeINasset,asset-shared-QAA-response.xml +70 -0
- package/test/resources/9999999/dataFolder/retrieve-ContentTypeINasset-shared,shared_data,shared_dataextension,shared_salesforcedataextension,synchronizeddataextension-QAA-response.xml +431 -0
- package/test/resources/9999999/dataFolder/retrieve-ContentTypeINautomations,queryactivity-response.xml +70 -0
- package/test/resources/9999999/dataFolder/{retrieve-response.xml → retrieve-ContentTypeINdataextension,hidden,queryactivity,salesforcedataextension,shared_data,shared_dataextension,shared_salesforcedataextension,synchronizeddataextension-response.xml} +32 -119
- package/test/resources/9999999/dataFolder/retrieve-ContentTypeINdataextension,salesforcedataextension,shared_data,shared_dataextension,shared_salesforcedataextension,synchronizeddataextension-QAA-response.xml +117 -0
- package/test/resources/9999999/dataFolder/retrieve-ContentTypeINhidden,shared_data,shared_dataextension,shared_salesforcedataextension,synchronizeddataextension-response.xml +46 -0
- package/test/resources/9999999/dataFolder/retrieve-ContentTypeINshared_data,shared_dataextension,shared_salesforcedataextension,synchronizeddataextension-QAA-response.xml +251 -0
- package/test/resources/9999999/dataFolder/retrieve-response-.xml +519 -0
- package/test/resources/9999999/event/build-expected.json +0 -1
- package/test/resources/9999999/event/get-expected.json +0 -1
- package/test/resources/9999999/event/post_withExistingDE-callout-expected.json +3 -0
- package/test/resources/9999999/event/post_withExistingDE-expected.json +2 -0
- package/test/resources/9999999/event/post_withSchema-callout-expected.json +3 -0
- package/test/resources/9999999/event/post_withSchema-expected.json +2 -0
- package/test/resources/9999999/event/put-callout-expected.json +3 -1
- package/test/resources/9999999/event/put-expected.json +2 -2
- package/test/resources/9999999/event/template-expected.json +0 -1
- package/test/resources/9999999/importFile/build-expected.json +2 -4
- package/test/resources/9999999/importFile/get-dataImport-expected.json +36 -0
- package/test/resources/9999999/importFile/get-expected.json +2 -4
- package/test/resources/9999999/importFile/get-sms-expected.json +2 -1
- package/test/resources/9999999/importFile/patch-expected.json +2 -4
- package/test/resources/9999999/importFile/post-expected.json +2 -4
- package/test/resources/9999999/importFile/template-expected.json +2 -4
- package/test/resources/9999999/interaction/v1/eventDefinitions/key_testExisting_event/put-response.json +2 -1
- package/test/resources/9999999/interaction/v1/eventDefinitions/post_withExistingDE-response.json +2 -0
- package/test/resources/9999999/interaction/v1/eventDefinitions/post_withSchema-response.json +2 -0
- package/test/resources/9999999/interaction/v1/interactions/3c3f4112-9b43-43ca-8a89-aa0375b2c1a2/get-response.json +4 -4
- package/test/resources/9999999/interaction/v1/interactions/key_testExisting_journey_Quicksend/get-response.json +4 -4
- package/test/resources/9999999/interaction/v1/interactions/publishAsync/3c3f4112-9b43-43ca-8a89-aa0375b2c1a2/post-response.json +4 -0
- package/test/resources/9999999/interaction/v1/interactions/publishStatus/45f06c0a-3ed2-48b2-a6a8-b5119253f01c/get-response-failed.json +34 -0
- package/test/resources/9999999/interaction/v1/interactions/publishStatus/45f06c0a-3ed2-48b2-a6a8-b5119253f01c/get-response-success.json +5 -0
- package/test/resources/9999999/interaction/v1/interactions/publishStatus/45f06c0a-3ed2-48b2-a6a8-b5119253f01c/get-response-successWarnings.json +36 -0
- package/test/resources/9999999/journey/build-expected.json +5 -5
- package/test/resources/9999999/journey/get-multistep-expected.json +1 -1
- package/test/resources/9999999/journey/get-quicksend-expected.json +5 -5
- package/test/resources/9999999/journey/get-quicksend-rcb-id-expected.json +1 -1
- package/test/resources/9999999/journey/get-quicksend-rcb-key-expected.json +7 -7
- package/test/resources/9999999/journey/get-quicksend-rcb-name-expected.json +1 -1
- package/test/resources/9999999/journey/post-expected.json +1 -1
- package/test/resources/9999999/journey/publish-callout-expected.json +1 -0
- package/test/resources/9999999/journey/put-expected.json +1 -1
- package/test/resources/9999999/journey/template-expected.json +5 -5
- package/test/resources/9999999/mobileKeyword/build-expected.json +1 -0
- package/test/resources/9999999/mobileKeyword/get-expected.json +1 -0
- package/test/resources/9999999/mobileKeyword/post-create-expected.json +1 -0
- package/test/resources/9999999/mobileKeyword/template-expected.json +1 -0
- package/test/resources/{1111111/accountUser/retrieve-CustomerKey=testExisting_userANDActiveFlag=trueANDEmailisNullORNamelikeapp userANDMustChangePassword=false-response.xml → 9999999/queryDefinition/retrieve-CustomerKey=badANDStatus=Active-response.xml} +10 -11
- package/test/resources/9999999/script/get_ampincluded-rcb-key-expected.html +2 -2
- package/test/resources/9999999/script/get_ampscript-expected.html +1 -0
- package/test/resources/9999999/script/get_ampscript-rcb-id-expected.html +1 -0
- package/test/resources/9999999/script/get_ampscript-rcb-key-expected.html +3 -2
- package/test/resources/9999999/script/get_ampscript-rcb-name-expected.html +3 -0
- package/test/resources/9999999/script/get_mixed-expected.html +2 -2
- package/test/resources/9999999/script/get_mixed-rcb-key-expected.html +2 -2
- package/test/resources/9999999/senderProfile/get-rcb-key-expected.json +4 -4
- package/test/resources/9999999/senderProfile/retrieve-response.xml +1 -1
- package/test/resources/9999999/triggeredSend/get-rcb-key-expected.json +4 -4
- package/test/resources/9999999/triggeredSendDefinition/retrieve-TriggeredSendStatusINNew,Active,Inactive,Moved,Canceled-response.xml +1 -1
- package/test/type.asset.test.js +232 -39
- package/test/type.automation.test.js +121 -77
- package/test/type.dataExtract.test.js +4 -4
- package/test/type.emailSend.test.js +3 -3
- package/test/type.event.test.js +0 -2
- package/test/type.importFile.test.js +12 -7
- package/test/type.journey.test.js +322 -9
- package/test/type.query.test.js +33 -29
- package/test/type.script.test.js +61 -11
- package/test/type.senderProfile.test.js +36 -3
- package/test/type.transactionalEmail.test.js +3 -3
- package/test/type.triggeredSend.test.js +75 -6
- package/test/utils.js +13 -3
- package/types/mcdev.d.js +27 -1
- /package/test/resources/1111111/accountUser/{retrieve-ActiveFlag=falseANDCustomerKey=testExisting_userANDEmaillike@-response.xml → retrieve-ActiveFlag=falseANDCustomerKey=testExisting_userANDEmaillike@-QAA-response.xml} +0 -0
- /package/test/resources/1111111/accountUser/{retrieve-ActiveFlag=falseANDEmaillike@-response.xml → retrieve-ActiveFlag=falseANDEmaillike@-QAA-response.xml} +0 -0
- /package/test/resources/1111111/accountUser/{retrieve-ActiveFlag=trueANDCustomerKey=testExisting_userANDEmaillike@-response.xml → retrieve-ActiveFlag=trueANDCustomerKey=testExisting_userANDEmaillike@-QAA-response.xml} +0 -0
- /package/test/resources/1111111/accountUser/{retrieve-ActiveFlag=trueANDEmailisNullORNamelikeapp userANDMustChangePassword=false-response.xml → retrieve-ActiveFlag=trueANDEmailisNullORNamelikeapp userANDMustChangePassword=false-QAA-response.xml} +0 -0
- /package/test/resources/1111111/accountUser/{retrieve-ActiveFlag=trueANDEmaillike@-response.xml → retrieve-ActiveFlag=trueANDEmaillike@-QAA-response.xml} +0 -0
- /package/test/resources/1111111/businessUnit/{retrieve-ID=1111111-response.xml → retrieve-ID=1111111-QAA-response.xml} +0 -0
- /package/test/resources/1111111/dataFolder/{retrieve-ContentType=synchronizeddataextensionORContentType=shared_salesforcedataextensionORContentType=shared_dataextensionORContentType=shared_dataORContentType=salesforcedataextensionORContentType=dataextensionORContentType=hidden-response.xml → retrieve-ContentTypeINdataextension,hidden,salesforcedataextension,shared_data,shared_dataextension,shared_salesforcedataextension,synchronizeddataextension-response.xml} +0 -0
- /package/test/resources/1111111/dataFolder/{retrieve-response.xml → retrieve-response-.xml} +0 -0
- /package/test/resources/9999999/dataFolder/{retrieve-ContentType=asset-sharedORContentType=asset-response.xml → retrieve-ContentTypeINasset,asset-shared-response.xml} +0 -0
- /package/test/resources/9999999/dataFolder/{retrieve-ContentType=contextual_suppression_listORContentType=publicationORContentType=suppression_listORContentType=mysubsORContentType=list-response.xml → retrieve-ContentTypeINcontextual_suppression_list,list,mysubs,publication,suppression_list-response.xml} +0 -0
- /package/test/resources/9999999/dataFolder/{retrieve-ContentType=synchronizeddataextensionORContentType=shared_salesforcedataextensionORContentType=shared_dataextensionORContentType=shared_dataORContentType=salesforcedataextensionORContentType=dataextensionORContentType=hidden-response.xml → retrieve-ContentTypeINdataextension,hidden,salesforcedataextension,shared_data,shared_dataextension,shared_salesforcedataextension,synchronizeddataextension-response.xml} +0 -0
- /package/test/resources/9999999/dataFolder/{retrieve-ContentType=triggered_send_journeybuilderORContentType=triggered_sendORContentType=hidden-response.xml → retrieve-ContentTypeINhidden,triggered_send,triggered_send_journeybuilder-response.xml} +0 -0
|
@@ -5,8 +5,8 @@ line1
|
|
|
5
5
|
%%[
|
|
6
6
|
SET @test = 'bla bla'
|
|
7
7
|
]%%
|
|
8
|
-
line2 %%= ContentBlockByKey("
|
|
8
|
+
line2 %%= ContentBlockByKey("testExisting_asset_htmlblock") =%% still line2; collapsed to line2 because it's assumed
|
|
9
9
|
HTML
|
|
10
10
|
<script runat="server">
|
|
11
|
-
Platform.Function.ContentBlockByKey("
|
|
11
|
+
Platform.Function.ContentBlockByKey("testExisting_asset_htmlblock");
|
|
12
12
|
</script>
|
|
@@ -4,11 +4,11 @@
|
|
|
4
4
|
"CustomerKey": "testExisting_senderProfile_rcb",
|
|
5
5
|
"Name": "testExisting_senderProfile_rcb",
|
|
6
6
|
"Description": "Send from joern.berkefeld@accenture.com",
|
|
7
|
-
"FromName": "%%= ContentBlockByKey(\"
|
|
8
|
-
"FromAddress": "%%= ContentBlockByKey(\"
|
|
7
|
+
"FromName": "%%= ContentBlockByKey(\"testExisting_asset_htmlblock\") =%%",
|
|
8
|
+
"FromAddress": "%%= ContentBlockByKey(\"testExisting_asset_htmlblock\") =%%",
|
|
9
9
|
"UseDefaultRMMRules": true,
|
|
10
|
-
"AutoForwardToEmailAddress": "%%= ContentBlockByKey(\"
|
|
11
|
-
"AutoForwardToName": "%%= ContentBlockByKey(\"
|
|
10
|
+
"AutoForwardToEmailAddress": "%%= ContentBlockByKey(\"testExisting_asset_htmlblock\") =%%",
|
|
11
|
+
"AutoForwardToName": "%%= ContentBlockByKey(\"testExisting_asset_htmlblock\") =%%",
|
|
12
12
|
"DirectForward": false,
|
|
13
13
|
"AutoReply": false,
|
|
14
14
|
"SenderHeaderEmailAddress": "",
|
|
@@ -66,7 +66,7 @@
|
|
|
66
66
|
<Name>testExisting_senderProfile_rcb</Name>
|
|
67
67
|
<Description>Send from joern.berkefeld@accenture.com</Description>
|
|
68
68
|
<FromName>%%= ContentBlockByName("Content Builder\dont strip non ssjs content") =%%</FromName>
|
|
69
|
-
<FromAddress>%%= ContentBlockByKey("
|
|
69
|
+
<FromAddress>%%= ContentBlockByKey("testExisting_asset_htmlblock") =%%</FromAddress>
|
|
70
70
|
<UseDefaultRMMRules>true</UseDefaultRMMRules>
|
|
71
71
|
<AutoForwardToEmailAddress>%%= ContentBlockById(1295064) =%%</AutoForwardToEmailAddress>
|
|
72
72
|
<AutoForwardToName>%%= ContentBlockById(1295064) =%%</AutoForwardToName>
|
|
@@ -7,10 +7,10 @@
|
|
|
7
7
|
"CreatedDate": "2018-06-25T05:58:00",
|
|
8
8
|
"CustomerKey": "testExisting_triggeredSend_rcb",
|
|
9
9
|
"Description": "Unsubscribe_Email",
|
|
10
|
-
"DynamicEmailSubject": "%%= ContentBlockByKey(\"
|
|
11
|
-
"EmailSubject": "%%= ContentBlockByKey(\"
|
|
12
|
-
"FromAddress": "%%= ContentBlockByKey(\"
|
|
13
|
-
"FromName": "%%= ContentBlockByKey(\"
|
|
10
|
+
"DynamicEmailSubject": "%%= ContentBlockByKey(\"testExisting_asset_htmlblock\") =%%",
|
|
11
|
+
"EmailSubject": "%%= ContentBlockByKey(\"testExisting_asset_htmlblock\") =%%",
|
|
12
|
+
"FromAddress": "%%= ContentBlockByKey(\"testExisting_asset_htmlblock\") =%%",
|
|
13
|
+
"FromName": "%%= ContentBlockByKey(\"testExisting_asset_htmlblock\") =%%",
|
|
14
14
|
"IsMultipart": false,
|
|
15
15
|
"IsWrapped": true,
|
|
16
16
|
"Keyword": "",
|
|
@@ -94,7 +94,7 @@
|
|
|
94
94
|
<CustomerKey>testExisting_senderProfile_rcb</CustomerKey>
|
|
95
95
|
</SenderProfile>
|
|
96
96
|
<FromName>%%= ContentBlockByName("Content Builder\dont strip non ssjs content") =%%</FromName>
|
|
97
|
-
<FromAddress>%%= ContentBlockByKey("
|
|
97
|
+
<FromAddress>%%= ContentBlockByKey("testExisting_asset_htmlblock") =%%</FromAddress>
|
|
98
98
|
<SuppressTracking>false</SuppressTracking>
|
|
99
99
|
<TriggeredSendType>Continuous</TriggeredSendType>
|
|
100
100
|
<TriggeredSendStatus>New</TriggeredSendStatus>
|
package/test/type.asset.test.js
CHANGED
|
@@ -156,24 +156,35 @@ describe('type: asset', () => {
|
|
|
156
156
|
retrieve['testInstance/testBU'].asset
|
|
157
157
|
? Object.keys(retrieve['testInstance/testBU'].asset).length
|
|
158
158
|
: 0,
|
|
159
|
-
|
|
160
|
-
'
|
|
159
|
+
8,
|
|
160
|
+
'Unexpected number of assets in retrieve response'
|
|
161
161
|
);
|
|
162
162
|
// get results from cache
|
|
163
163
|
const result = cache.getCache();
|
|
164
164
|
assert.equal(
|
|
165
165
|
result.asset ? Object.keys(result.asset).length : 0,
|
|
166
|
-
|
|
167
|
-
'
|
|
166
|
+
8,
|
|
167
|
+
'Unexpected number of assets in cache'
|
|
168
168
|
);
|
|
169
169
|
|
|
170
170
|
assert.deepEqual(
|
|
171
|
-
await getActualJson('
|
|
172
|
-
await testUtils.getExpectedJson(
|
|
171
|
+
await getActualJson('testExisting_asset_htmlblock', 'asset', 'block'),
|
|
172
|
+
await testUtils.getExpectedJson(
|
|
173
|
+
'9999999',
|
|
174
|
+
'asset',
|
|
175
|
+
'testExisting_asset_htmlblock-retrieve'
|
|
176
|
+
),
|
|
173
177
|
'returned metadata was not equal expected'
|
|
174
178
|
);
|
|
175
|
-
expect(
|
|
176
|
-
await
|
|
179
|
+
expect(
|
|
180
|
+
await getActualFile('testExisting_asset_htmlblock', 'asset', 'block', 'html')
|
|
181
|
+
).to.equal(
|
|
182
|
+
await testUtils.getExpectedFile(
|
|
183
|
+
'9999999',
|
|
184
|
+
'asset',
|
|
185
|
+
'testExisting_asset_htmlblock-retrieve',
|
|
186
|
+
'html'
|
|
187
|
+
)
|
|
177
188
|
);
|
|
178
189
|
|
|
179
190
|
assert.deepEqual(
|
|
@@ -216,7 +227,50 @@ describe('type: asset', () => {
|
|
|
216
227
|
|
|
217
228
|
assert.equal(
|
|
218
229
|
testUtils.getAPIHistoryLength(),
|
|
219
|
-
|
|
230
|
+
21,
|
|
231
|
+
'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests'
|
|
232
|
+
);
|
|
233
|
+
return;
|
|
234
|
+
});
|
|
235
|
+
|
|
236
|
+
it('Should retrieve a asset by key', async () => {
|
|
237
|
+
// WHEN
|
|
238
|
+
const retrieve = await handler.retrieve(
|
|
239
|
+
'testInstance/testBU',
|
|
240
|
+
['asset'],
|
|
241
|
+
['testExisting_asset_htmlblock']
|
|
242
|
+
);
|
|
243
|
+
|
|
244
|
+
// THEN
|
|
245
|
+
assert.equal(process.exitCode, 0, 'retrieve should not have thrown an error');
|
|
246
|
+
assert.equal(
|
|
247
|
+
retrieve['testInstance/testBU'].asset
|
|
248
|
+
? Object.keys(retrieve['testInstance/testBU'].asset).length
|
|
249
|
+
: 0,
|
|
250
|
+
1,
|
|
251
|
+
'Unexpected number of assets in retrieve response'
|
|
252
|
+
);
|
|
253
|
+
// get results from cache
|
|
254
|
+
const result = cache.getCache();
|
|
255
|
+
assert.equal(
|
|
256
|
+
result.asset ? Object.keys(result.asset).length : 0,
|
|
257
|
+
6,
|
|
258
|
+
'Unexpected number of assets in cache'
|
|
259
|
+
);
|
|
260
|
+
|
|
261
|
+
assert.deepEqual(
|
|
262
|
+
await getActualJson('testExisting_asset_htmlblock', 'asset', 'block'),
|
|
263
|
+
await testUtils.getExpectedJson(
|
|
264
|
+
'9999999',
|
|
265
|
+
'asset',
|
|
266
|
+
'testExisting_asset_htmlblock-retrieve'
|
|
267
|
+
),
|
|
268
|
+
'returned metadata was not equal expected'
|
|
269
|
+
);
|
|
270
|
+
|
|
271
|
+
assert.equal(
|
|
272
|
+
testUtils.getAPIHistoryLength(),
|
|
273
|
+
8,
|
|
220
274
|
'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests'
|
|
221
275
|
);
|
|
222
276
|
return;
|
|
@@ -229,6 +283,7 @@ describe('type: asset', () => {
|
|
|
229
283
|
});
|
|
230
284
|
|
|
231
285
|
it('Should create an asset with mis-matching memberId, automatically adding the MID suffix', async () => {
|
|
286
|
+
handler.setOptions({ autoMidSuffix: true });
|
|
232
287
|
// WHEN
|
|
233
288
|
const deployResult = await handler.deploy(
|
|
234
289
|
'testInstance/testBU',
|
|
@@ -250,7 +305,7 @@ describe('type: asset', () => {
|
|
|
250
305
|
assert.equal(
|
|
251
306
|
upsertCallout?.customerKey,
|
|
252
307
|
'testNew_asset-9999999',
|
|
253
|
-
'customerKey should be testNew_asset-9999999 due to
|
|
308
|
+
'customerKey should be testNew_asset-9999999 due to --autoMidSuffix'
|
|
254
309
|
);
|
|
255
310
|
|
|
256
311
|
// insert
|
|
@@ -262,14 +317,14 @@ describe('type: asset', () => {
|
|
|
262
317
|
|
|
263
318
|
assert.equal(
|
|
264
319
|
testUtils.getAPIHistoryLength(),
|
|
265
|
-
|
|
320
|
+
5,
|
|
266
321
|
'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests'
|
|
267
322
|
);
|
|
268
323
|
return;
|
|
269
324
|
});
|
|
270
325
|
|
|
271
|
-
it('Should create an assetwith mis-matching memberId
|
|
272
|
-
handler.setOptions({ keySuffix: '_DEV'
|
|
326
|
+
it('Should create an assetwith mis-matching memberId and --keySuffix', async () => {
|
|
327
|
+
handler.setOptions({ keySuffix: '_DEV' });
|
|
273
328
|
// WHEN
|
|
274
329
|
const deployResult = await handler.deploy(
|
|
275
330
|
'testInstance/testBU',
|
|
@@ -291,19 +346,18 @@ describe('type: asset', () => {
|
|
|
291
346
|
assert.equal(
|
|
292
347
|
upsertCallout?.customerKey,
|
|
293
348
|
'testNew_asset_DEV',
|
|
294
|
-
'customerKey should be testNew_asset_DEV due to
|
|
349
|
+
'customerKey should be testNew_asset_DEV due to --keySuffix'
|
|
295
350
|
);
|
|
296
351
|
|
|
297
352
|
assert.equal(
|
|
298
353
|
testUtils.getAPIHistoryLength(),
|
|
299
|
-
|
|
354
|
+
5,
|
|
300
355
|
'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests'
|
|
301
356
|
);
|
|
302
357
|
return;
|
|
303
358
|
});
|
|
304
359
|
|
|
305
|
-
it('Should create an assetwith mis-matching memberId
|
|
306
|
-
handler.setOptions({ noMidSuffix: true });
|
|
360
|
+
it('Should create an assetwith mis-matching memberId', async () => {
|
|
307
361
|
// WHEN
|
|
308
362
|
const deployResult = await handler.deploy(
|
|
309
363
|
'testInstance/testBU',
|
|
@@ -325,12 +379,12 @@ describe('type: asset', () => {
|
|
|
325
379
|
assert.equal(
|
|
326
380
|
upsertCallout?.customerKey,
|
|
327
381
|
'testNew_asset',
|
|
328
|
-
'customerKey should be testNew_asset
|
|
382
|
+
'customerKey should be testNew_asset'
|
|
329
383
|
);
|
|
330
384
|
|
|
331
385
|
assert.equal(
|
|
332
386
|
testUtils.getAPIHistoryLength(),
|
|
333
|
-
|
|
387
|
+
5,
|
|
334
388
|
'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests'
|
|
335
389
|
);
|
|
336
390
|
return;
|
|
@@ -342,7 +396,7 @@ describe('type: asset', () => {
|
|
|
342
396
|
// download first before we test buildTemplate
|
|
343
397
|
await handler.retrieve('testInstance/testBU', ['asset']);
|
|
344
398
|
|
|
345
|
-
const expectedApiCallsRetrieve =
|
|
399
|
+
const expectedApiCallsRetrieve = 21;
|
|
346
400
|
assert.equal(
|
|
347
401
|
testUtils.getAPIHistoryLength(),
|
|
348
402
|
expectedApiCallsRetrieve,
|
|
@@ -353,16 +407,18 @@ describe('type: asset', () => {
|
|
|
353
407
|
const result = await handler.buildTemplate(
|
|
354
408
|
'testInstance/testBU',
|
|
355
409
|
'asset',
|
|
356
|
-
['testExisting_asset_templatebasedemail'],
|
|
410
|
+
['testExisting_asset_templatebasedemail', 'testExisting_asset_htmlblock'],
|
|
357
411
|
'testSourceMarket'
|
|
358
412
|
);
|
|
359
413
|
// WHEN
|
|
360
414
|
assert.equal(process.exitCode, 0, 'buildTemplate should not have thrown an error');
|
|
361
415
|
assert.equal(
|
|
362
416
|
result.asset ? Object.keys(result.asset).length : 0,
|
|
363
|
-
|
|
364
|
-
'
|
|
417
|
+
2,
|
|
418
|
+
'unexpected number of assets templated'
|
|
365
419
|
);
|
|
420
|
+
|
|
421
|
+
// testExisting_asset_templatebasedemail
|
|
366
422
|
assert.deepEqual(
|
|
367
423
|
await getActualTemplateJson(
|
|
368
424
|
'testExisting_asset_templatebasedemail',
|
|
@@ -372,7 +428,6 @@ describe('type: asset', () => {
|
|
|
372
428
|
await testUtils.getExpectedJson('9999999', 'asset', 'template-templatebasedemail'),
|
|
373
429
|
'returned template JSON of buildTemplate was not equal expected'
|
|
374
430
|
);
|
|
375
|
-
|
|
376
431
|
expect(
|
|
377
432
|
await getActualTemplateFile(
|
|
378
433
|
'testExisting_asset_templatebasedemail',
|
|
@@ -405,15 +460,21 @@ describe('type: asset', () => {
|
|
|
405
460
|
'amp'
|
|
406
461
|
)
|
|
407
462
|
);
|
|
408
|
-
|
|
409
|
-
await handler.buildDefinition(
|
|
463
|
+
|
|
464
|
+
const definitions = await handler.buildDefinition(
|
|
410
465
|
'testInstance/testBU',
|
|
411
466
|
'asset',
|
|
412
|
-
['testExisting_asset_templatebasedemail'],
|
|
467
|
+
['testExisting_asset_templatebasedemail', 'testExisting_asset_htmlblock'],
|
|
413
468
|
'testTargetMarket'
|
|
414
469
|
);
|
|
415
470
|
assert.equal(process.exitCode, 0, 'buildDefinition should not have thrown an error');
|
|
471
|
+
assert.equal(
|
|
472
|
+
definitions.asset ? Object.keys(definitions.asset).length : 0,
|
|
473
|
+
2,
|
|
474
|
+
'unexpected number of assets templated'
|
|
475
|
+
);
|
|
416
476
|
|
|
477
|
+
// testTemplated_asset_templatebasedemail
|
|
417
478
|
assert.deepEqual(
|
|
418
479
|
await getActualDeployJson(
|
|
419
480
|
'testTemplated_asset_templatebasedemail',
|
|
@@ -456,6 +517,18 @@ describe('type: asset', () => {
|
|
|
456
517
|
)
|
|
457
518
|
);
|
|
458
519
|
|
|
520
|
+
// testTemplated_asset_htmlblock
|
|
521
|
+
assert.deepEqual(
|
|
522
|
+
await getActualDeployJson('testTemplated_asset_htmlblock', 'asset', 'block'),
|
|
523
|
+
await testUtils.getExpectedJson('9999999', 'asset', 'build-asset_htmlblock'),
|
|
524
|
+
'returned deployment JSON was not equal expected'
|
|
525
|
+
);
|
|
526
|
+
expect(
|
|
527
|
+
await getActualDeployFile('testTemplated_asset_htmlblock', 'asset', 'block', 'html')
|
|
528
|
+
).to.equal(
|
|
529
|
+
await testUtils.getExpectedFile('9999999', 'asset', 'build-asset_htmlblock', 'html')
|
|
530
|
+
);
|
|
531
|
+
|
|
459
532
|
assert.equal(
|
|
460
533
|
testUtils.getAPIHistoryLength() - expectedApiCallsRetrieve,
|
|
461
534
|
0,
|
|
@@ -463,6 +536,114 @@ describe('type: asset', () => {
|
|
|
463
536
|
);
|
|
464
537
|
return;
|
|
465
538
|
});
|
|
539
|
+
|
|
540
|
+
it('Should create a asset template via buildTemplate with --dependencies', async () => {
|
|
541
|
+
// download first before we test buildTemplate
|
|
542
|
+
await handler.retrieve('testInstance/testBU', ['asset']);
|
|
543
|
+
|
|
544
|
+
const expectedApiCallsRetrieve = 21;
|
|
545
|
+
assert.equal(
|
|
546
|
+
testUtils.getAPIHistoryLength(),
|
|
547
|
+
expectedApiCallsRetrieve,
|
|
548
|
+
'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests'
|
|
549
|
+
);
|
|
550
|
+
handler.setOptions({ dependencies: true, skipInteraction: true });
|
|
551
|
+
|
|
552
|
+
// GIVEN there is a template
|
|
553
|
+
const templatedItems = await handler.buildTemplate(
|
|
554
|
+
'testInstance/testBU',
|
|
555
|
+
'asset',
|
|
556
|
+
['testExisting_asset_templatebasedemail'],
|
|
557
|
+
'testSourceMarket'
|
|
558
|
+
);
|
|
559
|
+
// WHEN
|
|
560
|
+
assert.equal(process.exitCode, 0, 'buildTemplate should not have thrown an error');
|
|
561
|
+
assert.equal(
|
|
562
|
+
templatedItems.asset ? templatedItems.asset.length : 0,
|
|
563
|
+
5,
|
|
564
|
+
'Unexpted number of assets templated'
|
|
565
|
+
);
|
|
566
|
+
assert.deepEqual(
|
|
567
|
+
templatedItems.asset.map((item) => item.customerKey),
|
|
568
|
+
[
|
|
569
|
+
'{{{prefix}}}asset_templatebasedemail',
|
|
570
|
+
'{{{prefix}}}asset_template',
|
|
571
|
+
'{{{prefix}}}asset_htmlblock',
|
|
572
|
+
'{{{prefix}}}htmlblock1',
|
|
573
|
+
'{{{prefix}}}htmlblock2',
|
|
574
|
+
],
|
|
575
|
+
'expected specific assets to be templated'
|
|
576
|
+
);
|
|
577
|
+
|
|
578
|
+
// testExisting_asset_templatebasedemail
|
|
579
|
+
assert.deepEqual(
|
|
580
|
+
await getActualTemplateJson(
|
|
581
|
+
'testExisting_asset_templatebasedemail',
|
|
582
|
+
'asset',
|
|
583
|
+
'message'
|
|
584
|
+
),
|
|
585
|
+
await testUtils.getExpectedJson('9999999', 'asset', 'template-templatebasedemail'),
|
|
586
|
+
'returned template JSON of buildTemplate was not equal expected'
|
|
587
|
+
);
|
|
588
|
+
|
|
589
|
+
expect(
|
|
590
|
+
await getActualTemplateFile(
|
|
591
|
+
'testExisting_asset_templatebasedemail',
|
|
592
|
+
'asset',
|
|
593
|
+
'message',
|
|
594
|
+
'html',
|
|
595
|
+
'views.html.content'
|
|
596
|
+
)
|
|
597
|
+
).to.equal(
|
|
598
|
+
await testUtils.getExpectedFile(
|
|
599
|
+
'9999999',
|
|
600
|
+
'asset',
|
|
601
|
+
'template-templatebasedemail-html',
|
|
602
|
+
'html'
|
|
603
|
+
)
|
|
604
|
+
);
|
|
605
|
+
expect(
|
|
606
|
+
await getActualTemplateFile(
|
|
607
|
+
'testExisting_asset_templatebasedemail',
|
|
608
|
+
'asset',
|
|
609
|
+
'message',
|
|
610
|
+
'amp',
|
|
611
|
+
'views.preheader.content'
|
|
612
|
+
)
|
|
613
|
+
).to.equal(
|
|
614
|
+
await testUtils.getExpectedFile(
|
|
615
|
+
'9999999',
|
|
616
|
+
'asset',
|
|
617
|
+
'template-templatebasedemail-preheader',
|
|
618
|
+
'amp'
|
|
619
|
+
)
|
|
620
|
+
);
|
|
621
|
+
|
|
622
|
+
// testExisting_asset_template
|
|
623
|
+
assert.deepEqual(
|
|
624
|
+
await getActualTemplateJson('testExisting_asset_template', 'asset', 'template'),
|
|
625
|
+
await testUtils.getExpectedJson('9999999', 'asset', 'template-emailTemplate'),
|
|
626
|
+
'returned template JSON of buildTemplate was not equal expected'
|
|
627
|
+
);
|
|
628
|
+
|
|
629
|
+
// testExisting_asset_htmlblock
|
|
630
|
+
assert.deepEqual(
|
|
631
|
+
await getActualTemplateJson('testExisting_asset_htmlblock', 'asset', 'block'),
|
|
632
|
+
await testUtils.getExpectedJson(
|
|
633
|
+
'9999999',
|
|
634
|
+
'asset',
|
|
635
|
+
'template-testExisting_asset_htmlblock'
|
|
636
|
+
),
|
|
637
|
+
'returned template JSON of buildTemplate was not equal expected'
|
|
638
|
+
);
|
|
639
|
+
|
|
640
|
+
assert.equal(
|
|
641
|
+
testUtils.getAPIHistoryLength() - expectedApiCallsRetrieve,
|
|
642
|
+
4,
|
|
643
|
+
'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests'
|
|
644
|
+
);
|
|
645
|
+
return;
|
|
646
|
+
});
|
|
466
647
|
});
|
|
467
648
|
|
|
468
649
|
describe('Delete ================', () => {
|
|
@@ -509,7 +690,11 @@ describe('type: asset', () => {
|
|
|
509
690
|
|
|
510
691
|
it('Should resolve the id of the item AND find the asset locally', async () => {
|
|
511
692
|
// prep test by retrieving the file
|
|
512
|
-
await handler.retrieve(
|
|
693
|
+
await handler.retrieve(
|
|
694
|
+
'testInstance/testBU',
|
|
695
|
+
['asset-block'],
|
|
696
|
+
['testExisting_asset_htmlblock']
|
|
697
|
+
);
|
|
513
698
|
// WHEN
|
|
514
699
|
const resolveIdJson = await handler.resolveId(
|
|
515
700
|
'testInstance/testBU',
|
|
@@ -558,15 +743,19 @@ describe('type: asset', () => {
|
|
|
558
743
|
// retrieve result
|
|
559
744
|
assert.deepEqual(
|
|
560
745
|
replace['testInstance/testBU'].asset,
|
|
561
|
-
[
|
|
746
|
+
[
|
|
747
|
+
'testExisting_asset_htmlblock',
|
|
748
|
+
'testExisting_htmlblock1',
|
|
749
|
+
'testExisting_asset_message',
|
|
750
|
+
],
|
|
562
751
|
'should have found the right assets that need updating'
|
|
563
752
|
);
|
|
564
753
|
// get results from cache
|
|
565
754
|
const result = cache.getCache();
|
|
566
755
|
assert.equal(
|
|
567
756
|
result.asset ? Object.keys(result.asset).length : 0,
|
|
568
|
-
|
|
569
|
-
'
|
|
757
|
+
8,
|
|
758
|
+
'Unexpected number of assets in cache'
|
|
570
759
|
);
|
|
571
760
|
// check if conversions happened
|
|
572
761
|
expect(
|
|
@@ -620,7 +809,7 @@ describe('type: asset', () => {
|
|
|
620
809
|
|
|
621
810
|
assert.equal(
|
|
622
811
|
testUtils.getAPIHistoryLength(),
|
|
623
|
-
|
|
812
|
+
23,
|
|
624
813
|
'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests'
|
|
625
814
|
);
|
|
626
815
|
return;
|
|
@@ -649,8 +838,8 @@ describe('type: asset', () => {
|
|
|
649
838
|
const result = cache.getCache();
|
|
650
839
|
assert.equal(
|
|
651
840
|
result.asset ? Object.keys(result.asset).length : 0,
|
|
652
|
-
|
|
653
|
-
'
|
|
841
|
+
8,
|
|
842
|
+
'Unexpected number of assets in cache'
|
|
654
843
|
);
|
|
655
844
|
// check if conversions happened
|
|
656
845
|
expect(
|
|
@@ -704,7 +893,7 @@ describe('type: asset', () => {
|
|
|
704
893
|
|
|
705
894
|
assert.equal(
|
|
706
895
|
testUtils.getAPIHistoryLength(),
|
|
707
|
-
|
|
896
|
+
23,
|
|
708
897
|
'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests'
|
|
709
898
|
);
|
|
710
899
|
return;
|
|
@@ -726,15 +915,19 @@ describe('type: asset', () => {
|
|
|
726
915
|
// retrieve result
|
|
727
916
|
assert.deepEqual(
|
|
728
917
|
replace['testInstance/testBU'].asset,
|
|
729
|
-
[
|
|
918
|
+
[
|
|
919
|
+
'testExisting_asset_htmlblock',
|
|
920
|
+
'testExisting_htmlblock1',
|
|
921
|
+
'testExisting_asset_message',
|
|
922
|
+
],
|
|
730
923
|
'should have found the right assets that need updating'
|
|
731
924
|
);
|
|
732
925
|
// get results from cache
|
|
733
926
|
const result = cache.getCache();
|
|
734
927
|
assert.equal(
|
|
735
928
|
result.asset ? Object.keys(result.asset).length : 0,
|
|
736
|
-
|
|
737
|
-
'
|
|
929
|
+
8,
|
|
930
|
+
'Unexpected number of assets in cache'
|
|
738
931
|
);
|
|
739
932
|
// check if conversions happened
|
|
740
933
|
expect(
|
|
@@ -788,7 +981,7 @@ describe('type: asset', () => {
|
|
|
788
981
|
|
|
789
982
|
assert.equal(
|
|
790
983
|
testUtils.getAPIHistoryLength(),
|
|
791
|
-
|
|
984
|
+
23,
|
|
792
985
|
'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests'
|
|
793
986
|
);
|
|
794
987
|
return;
|