mcdev 8.0.2 → 8.1.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.
- package/.github/ISSUE_TEMPLATE/bug.yml +1 -0
- package/@types/lib/index.d.ts.map +1 -1
- package/@types/lib/metadataTypes/DataExtensionField.d.ts +1 -7
- package/@types/lib/metadataTypes/DataExtensionField.d.ts.map +1 -1
- package/@types/lib/metadataTypes/Journey.d.ts +6 -0
- package/@types/lib/metadataTypes/Journey.d.ts.map +1 -1
- package/@types/lib/metadataTypes/definitions/DataExtensionField.definition.d.ts +1 -0
- package/@types/lib/metadataTypes/definitions/Journey.definition.d.ts +6 -0
- package/@types/lib/util/devops.d.ts.map +1 -1
- package/lib/index.js +3 -4
- package/lib/metadataTypes/DataExtensionField.js +102 -49
- package/lib/metadataTypes/Folder.js +1 -1
- package/lib/metadataTypes/definitions/DataExtensionField.definition.js +1 -0
- package/lib/metadataTypes/definitions/Journey.definition.js +6 -0
- package/lib/util/devops.js +8 -7
- package/package.json +1 -1
- package/test/mockRoot/.mcdevrc.json +1 -1
- package/test/resources/9999999/dataExtensionField/retrieve-Name=FirstName-response.xml +78 -0
- package/test/resources/9999999/dataExtensionField/retrieve-Name=LastName-response.xml +78 -0
- package/test/type.dataExtension.test.js +0 -14
- package/test/type.dataExtensionField.test.js +81 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../lib/index.js"],"names":[],"mappings":";uBAwBa,OAAO,qBAAqB,EAAE,QAAQ;0BACtC,OAAO,qBAAqB,EAAE,WAAW;8BACzC,OAAO,qBAAqB,EAAE,eAAe;2BAC7C,OAAO,qBAAqB,EAAE,YAAY;sBAC1C,OAAO,qBAAqB,EAAE,OAAO;+BACrC,OAAO,qBAAqB,EAAE,gBAAgB;mCAC9C,OAAO,qBAAqB,EAAE,oBAAoB;kCAClD,OAAO,qBAAqB,EAAE,mBAAmB;8BACjD,OAAO,qBAAqB,EAAE,eAAe;iCAC7C,OAAO,qBAAqB,EAAE,kBAAkB;oCAChD,OAAO,qBAAqB,EAAE,qBAAqB;mCACnD,OAAO,qBAAqB,EAAE,oBAAoB;8BAClD,OAAO,qBAAqB,EAAE,eAAe;gCAC7C,OAAO,qBAAqB,EAAE,iBAAiB;0BAC/C,OAAO,qBAAqB,EAAE,WAAW;2BACzC,OAAO,qBAAqB,EAAE,YAAY;0BAC1C,OAAO,qBAAqB,EAAE,WAAW;0CACzC,OAAO,qBAAqB,EAAE,2BAA2B;AAlBtE;;;;;;;;;;;;;;;;;;;GAmBG;AAEH;;GAEG;AACH;IACI;;OAEG;IACH,kBAFa,MAAM,CAKlB;IAED;;;;;OAKG;IACH,4CAHW,eAAe,GACb,IAAI,CAIhB;IAED;;;;;;;;OAQG;IACH,6BALG;QAAuB,MAAM,GAArB,OAAO;QACQ,OAAO,GAAtB,OAAO;QACQ,KAAK,GAApB,OAAO;KACf,GAAU,IAAI,CAIhB;IACD,8BAuCE;IAEF;;;;;OAKG;IACH,wBAHW,MAAM,GACJ,IAAI,CAoBhB;IAED;;;;;;;;;;OAUG;IACH,4BAPG;QAAsB,WAAW,GAAzB,MAAM;QACQ,KAAK,GAAnB,MAAM;QACQ,MAAM,GAApB,MAAM;QACQ,aAAa,GAA3B,MAAM;QACgB,OAAO,GAA7B,YAAY,EAAE;KACtB,GAAU,OAAO,CAAE,YAAY,EAAE,CAAC,CA6BpC;IAED;;OAEG;IACH,mCAQC;IAED;;OAEG;IACH,uBAFa,WAAW,EAAE,CAIzB;IAED;;OAEG;IACH,kBAFa,OAAO,CAAE,OAAO,CAAC,CAc7B;IAED;;OAEG;IACH,sCA6BC;IAED;;;;;;;;OAQG;IACH,8BANW,MAAM,qBACN,MAAM,EAAE,GAAG,YAAY,SACvB,MAAM,EAAE,kBACR,OAAO,GACL,OAAO,CAAE,MAAM,CAAC,CAsH5B;IAED;;;;;;;;;OASG;IACH,gCAPW,MAAM,MACN,MAAM,qBACN,MAAM,EAAE,GAAG,YAAY,SACvB,MAAM,EAAE,kBACR,OAAO,GACL,OAAO,CAAE,MAAM,CAAC,CAsF5B;IAED;;;;;;;OAOG;IACH,4BALW,MAAM,qBACN,MAAM,EAAE,GAAG,YAAY,WACvB,MAAM,EAAE,GACN,OAAO,CAAE;YAAQ,MAAM,GAAE,oBAAoB;KAAC,CAAC,CAS3D;IAED;;;;;OAKG;IACH,qCAHW,MAAM,GACJ,OAAO,CAAE,IAAI,CAAC,CAW1B;IAED;;;;OAIG;IACH,sBAFa,OAAO,CAAE,IAAI,CAAC,CAU1B;IAED;;;;;OAKG;IACH,gCAHW,MAAM,GACJ,OAAO,CAAE,IAAI,CAAC,CAc1B;IAED;;;;;;OAMG;IACH,8BAJW,MAAM,QACN,MAAM,GACJ,OAAO,CAAE,IAAI,CAAC,CAiC1B;IAED;;;;;;;OAOG;IACH,iCALW,MAAM,iBACN,MAAM,GAAG,YAAY,SACrB,MAAM,EAAE,GAAG,MAAM,GACf,OAAO,CAAE,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../lib/index.js"],"names":[],"mappings":"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"}
|
|
@@ -101,13 +101,6 @@ declare class DataExtensionField extends MetadataType {
|
|
|
101
101
|
* @returns {Promise.<boolean>} deletion success flag
|
|
102
102
|
*/
|
|
103
103
|
static deleteByKeySOAP(customerKey: string, fieldId?: string): Promise<boolean>;
|
|
104
|
-
/**
|
|
105
|
-
* clean up after deleting a metadata item
|
|
106
|
-
*
|
|
107
|
-
* @param {string} customerKey Identifier of metadata item
|
|
108
|
-
* @returns {Promise.<void>} -
|
|
109
|
-
*/
|
|
110
|
-
static postDeleteTasks(customerKey: string): Promise<void>;
|
|
111
104
|
}
|
|
112
105
|
declare namespace DataExtensionField {
|
|
113
106
|
let definition: {
|
|
@@ -126,6 +119,7 @@ declare namespace DataExtensionField {
|
|
|
126
119
|
typeRetrieveByDefault: boolean;
|
|
127
120
|
typeCdpByDefault: boolean;
|
|
128
121
|
typeName: string;
|
|
122
|
+
deleteSynchronously: boolean;
|
|
129
123
|
fields: {
|
|
130
124
|
'Client.ID': {
|
|
131
125
|
isCreateable: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataExtensionField.d.ts","sourceRoot":"","sources":["../../../lib/metadataTypes/DataExtensionField.js"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"DataExtensionField.d.ts","sourceRoot":"","sources":["../../../lib/metadataTypes/DataExtensionField.js"],"names":[],"mappings":";uBAQa,OAAO,wBAAwB,EAAE,QAAQ;0BACzC,OAAO,wBAAwB,EAAE,WAAW;8BAC5C,OAAO,wBAAwB,EAAE,eAAe;+BAChD,OAAO,wBAAwB,EAAE,gBAAgB;mCACjD,OAAO,wBAAwB,EAAE,oBAAoB;kCACrD,OAAO,wBAAwB,EAAE,mBAAmB;8BACpD,OAAO,wBAAwB,EAAE,eAAe;iCAChD,OAAO,wBAAwB,EAAE,kBAAkB;gCACnD,OAAO,wBAAwB,EAAE,iBAAiB;0BAClD,OAAO,wBAAwB,EAAE,WAAW;oCAI5C,OAAO,wBAAwB,EAAE,qBAAqB;qCACtD,OAAO,wBAAwB,EAAE,sBAAsB;AAfpE;;;;;;;;;;;GAWG;AAEH;;;GAGG;AAEH;;;;GAIG;AACH;IACI,6BAAwB;IAExB;;;;;;OAMG;IACH,6BAJW,MAAM,qBACN,MAAM,EAAE,GACN,OAAO,CAAE;QAAC,QAAQ,EAAE,qBAAqB,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAC,CAAC,CAIrE;IACD;;;;OAIG;IACH,2BAFa,OAAO,CAAE,kBAAkB,CAAC,CAQxC;IAED;;;;;;OAMG;IACH,0CAJW,iBAAiB,qBACjB,MAAM,EAAE,GACN,OAAO,CAAE;QAAC,QAAQ,EAAE,qBAAqB,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAC,CAAC,CAUrE;IAED;;;;;OAKG;IACH,uCAHW,qBAAqB,GACnB,sBAAsB,EAAE,CASpC;IAED;;;;;;OAMG;IACH,uBAJW,sBAAsB,KACtB,sBAAsB,GACpB,MAAM,CAIlB;IAED;;;;;OAKG;IACH,qCAHW,sBAAsB,GACpB,sBAAsB,CAelC;IAED;;;;;;;OAOG;IACH,mDAJW,sBAAsB,EAAE,SACxB,MAAM,GACJ,OAAO,CAAE,qBAAqB,CAAC,CAgK3C;IAYD;;;;;;OAMG;IACH,oCAJW,MAAM,YACN,MAAM,GACJ,OAAO,CAAE,OAAO,CAAC,CAuH7B;CACJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBArawB,mBAAmB"}
|
|
@@ -397,6 +397,12 @@ declare namespace Journey {
|
|
|
397
397
|
retrieving: boolean;
|
|
398
398
|
template: boolean;
|
|
399
399
|
};
|
|
400
|
+
'activities[].configurationArguments.isReconcilable': {
|
|
401
|
+
isCreateable: boolean;
|
|
402
|
+
isUpdateable: boolean;
|
|
403
|
+
retrieving: boolean;
|
|
404
|
+
template: boolean;
|
|
405
|
+
};
|
|
400
406
|
'activities[].configurationArguments.isActivityBatchValidated': {
|
|
401
407
|
isCreateable: boolean;
|
|
402
408
|
isUpdateable: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Journey.d.ts","sourceRoot":"","sources":["../../../lib/metadataTypes/Journey.js"],"names":[],"mappings":";uBAea,OAAO,wBAAwB,EAAE,QAAQ;0BACzC,OAAO,wBAAwB,EAAE,WAAW;8BAC5C,OAAO,wBAAwB,EAAE,eAAe;+BAChD,OAAO,wBAAwB,EAAE,gBAAgB;mCACjD,OAAO,wBAAwB,EAAE,oBAAoB;kCACrD,OAAO,wBAAwB,EAAE,mBAAmB;8BACpD,OAAO,wBAAwB,EAAE,eAAe;iCAChD,OAAO,wBAAwB,EAAE,kBAAkB;gCACnD,OAAO,wBAAwB,EAAE,iBAAiB;0BAClD,OAAO,wBAAwB,EAAE,WAAW;2BAC5C,OAAO,wBAAwB,EAAE,YAAY;AAX1D;;;;;;;;;;;;GAYG;AAEH;;;;;;;GAOG;AACH;IACI;;;;;;;;OAQG;IACH,6BANW,MAAM,MACN,IAAI,GAAG,MAAM,EAAE,OACf,IAAI,GAAG,MAAM,EAAE,QACf,MAAM,GACJ,OAAO,CAAE,kBAAkB,CAAC,CA+JxC;IA6JD;;;;;OAKG;IACH,wBAHW,gBAAgB,gBAS1B;IAED;;;;;OAKG;IACH,wBAHW,gBAAgB,gBAK1B;IAmBD;;;;OAIG;IACH,2CAFW,eAAe,iBAmBzB;IAED;;;;;OAKG;IACH,mCAHW,gBAAgB,GACd,OAAO,CAAE,gBAAgB,CAAC,CA4MtC;IAED;;;;;OAKG;IACH,6CA6lBC;IAED;;;;;;OAMG;IACH,gCAHW,gBAAgB,GACd,OAAO,CAAE,gBAAgB,CAAC,CA8KtC;IAED;;;;;OAKG;IACH,0CA2OC;IA8MD;;;;OAIG;IACH,sCAFW,eAAe,iBAmCzB;IAED;;;;;;OAMG;IACH,uBAJW,MAAM,EAAE,kBACR,eAAe,GACb,OAAO,CAAE,MAAM,EAAE,CAAC,CAkT9B;IAED;;;;;;;OAOG;IACH,mCANW,MAAM,EAAE,wBACR,MAAM,oBACN,MAAM,kBACN,eAAe,GACb,OAAO,CAAE,IAAI,CAAC,CA+E1B;IAED;;;;;;;;;OASG;IACH,sCAPW,MAAM,OACN,MAAM,QACN,MAAM,WACN,OAAO,eAAe,EAAE,OAAO,UAC/B,MAAM,GACJ,OAAO,CAAE,MAAM,CAAC,CAiD5B;IAED;;;;OAIG;IACH,2CAFW;QAAC,MAAM,EAAC,MAAM,CAAC;QAAC,MAAM,QAAO;QAAC,QAAQ,QAAM;KAAC,QAiCvD;IAED;;;;;OAKG;IACH,wBAHW,MAAM,EAAE,GACN,OAAO,CAAE,MAAM,EAAE,CAAC,CAsJ9B;IAED;;;;;OAKG;IACH,qBAHW,MAAM,EAAE,GACN,OAAO,CAAE,MAAM,EAAE,CAAC,CAmJ9B;IAyTD;;;;;;;OAOG;IACH,uBALW,MAAM,EAAE,MACR,OAAO,kBACP,eAAe,GACb,OAAO,CAAE,MAAM,EAAE,CAAC,CAgJ9B;IACD;;;;;;OAMG;IACH,yBAJW,MAAM,gBACN,kBAAkB,GAChB,OAAO,CAAE,OAAO,CAAC,CAqB7B;CACJ
|
|
1
|
+
{"version":3,"file":"Journey.d.ts","sourceRoot":"","sources":["../../../lib/metadataTypes/Journey.js"],"names":[],"mappings":"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"}
|
|
@@ -227,6 +227,12 @@ declare namespace _default {
|
|
|
227
227
|
retrieving: boolean;
|
|
228
228
|
template: boolean;
|
|
229
229
|
};
|
|
230
|
+
'activities[].configurationArguments.isReconcilable': {
|
|
231
|
+
isCreateable: boolean;
|
|
232
|
+
isUpdateable: boolean;
|
|
233
|
+
retrieving: boolean;
|
|
234
|
+
template: boolean;
|
|
235
|
+
};
|
|
230
236
|
'activities[].configurationArguments.isActivityBatchValidated': {
|
|
231
237
|
isCreateable: boolean;
|
|
232
238
|
isUpdateable: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"devops.d.ts","sourceRoot":"","sources":["../../../lib/util/devops.js"],"names":[],"mappings":";yBAea,OAAO,wBAAwB,EAAE,UAAU;uBAC3C,OAAO,wBAAwB,EAAE,QAAQ;oBACzC,OAAO,wBAAwB,EAAE,KAAK;0BACtC,OAAO,wBAAwB,EAAE,WAAW;8BAC5C,OAAO,wBAAwB,EAAE,eAAe;2BAChD,OAAO,wBAAwB,EAAE,YAAY;sBAC7C,OAAO,wBAAwB,EAAE,OAAO;+BACxC,OAAO,wBAAwB,EAAE,gBAAgB;mCACjD,OAAO,wBAAwB,EAAE,oBAAoB;kCACrD,OAAO,wBAAwB,EAAE,mBAAmB;8BACpD,OAAO,wBAAwB,EAAE,eAAe;iCAChD,OAAO,wBAAwB,EAAE,kBAAkB;oCACnD,OAAO,wBAAwB,EAAE,qBAAqB;mCACtD,OAAO,wBAAwB,EAAE,oBAAoB;gCACrD,OAAO,wBAAwB,EAAE,iBAAiB;0BAClD,OAAO,wBAAwB,EAAE,WAAW;2BAC5C,OAAO,wBAAwB,EAAE,YAAY;;IAOtD;;;;;;;;;;OAUG;IACH,kCAPW,OAAO,UACP,MAAM,oBACN,OAAO,mBACP,MAAM,kBACN,MAAM,GACJ,OAAO,CAAE,YAAY,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"devops.d.ts","sourceRoot":"","sources":["../../../lib/util/devops.js"],"names":[],"mappings":";yBAea,OAAO,wBAAwB,EAAE,UAAU;uBAC3C,OAAO,wBAAwB,EAAE,QAAQ;oBACzC,OAAO,wBAAwB,EAAE,KAAK;0BACtC,OAAO,wBAAwB,EAAE,WAAW;8BAC5C,OAAO,wBAAwB,EAAE,eAAe;2BAChD,OAAO,wBAAwB,EAAE,YAAY;sBAC7C,OAAO,wBAAwB,EAAE,OAAO;+BACxC,OAAO,wBAAwB,EAAE,gBAAgB;mCACjD,OAAO,wBAAwB,EAAE,oBAAoB;kCACrD,OAAO,wBAAwB,EAAE,mBAAmB;8BACpD,OAAO,wBAAwB,EAAE,eAAe;iCAChD,OAAO,wBAAwB,EAAE,kBAAkB;oCACnD,OAAO,wBAAwB,EAAE,qBAAqB;mCACtD,OAAO,wBAAwB,EAAE,oBAAoB;gCACrD,OAAO,wBAAwB,EAAE,iBAAiB;0BAClD,OAAO,wBAAwB,EAAE,WAAW;2BAC5C,OAAO,wBAAwB,EAAE,YAAY;;IAOtD;;;;;;;;;;OAUG;IACH,kCAPW,OAAO,UACP,MAAM,oBACN,OAAO,mBACP,MAAM,kBACN,MAAM,GACJ,OAAO,CAAE,YAAY,EAAE,CAAC,CA0WpC;IAED;;;;;;;;OAQG;IACH,2CANW,OAAO,SACP,MAAM,YACN,YAAY,EAAE,kBACd,MAAM,GACJ,OAAO,CAAE,YAAY,EAAE,CAAC,CAsJpC;IAED;;;;;;OAMG;IACH,6BAJW,MAAM,cACN,MAAM,GACJ,IAAI,CA4BhB;IAED;;;;;;;;;OASG;IACH,sCANW,OAAO,YACP,QAAQ,gBACR,MAAM,UACN,MAAM,EAAE,GACN,OAAO,CAAE,MAAM,EAAE,CAAC,CAM9B;IACD;;;;;;;OAOG;IACH,4CALW,YAAY,EAAE,gBACd,MAAM,cACN,OAAO,gBACP,MAAM,QAgGhB"}
|
package/lib/index.js
CHANGED
|
@@ -647,14 +647,13 @@ class Mcdev {
|
|
|
647
647
|
|
|
648
648
|
await MetadataTypeInfo[type].preDeleteTasks(keyArr);
|
|
649
649
|
|
|
650
|
-
const deleteLimit = pLimit(
|
|
650
|
+
const deleteLimit = pLimit(
|
|
651
|
+
MetadataTypeInfo[type].definition.deleteSynchronously ? 1 : 20
|
|
652
|
+
);
|
|
651
653
|
|
|
652
654
|
await Promise.allSettled(
|
|
653
655
|
keyArr.map((key) =>
|
|
654
656
|
deleteLimit(async () => {
|
|
655
|
-
// Util.logger.info(
|
|
656
|
-
// Util.getGrayMsg(` - Deleting ${type} ${key} on BU ${businessUnit}`)
|
|
657
|
-
// );
|
|
658
657
|
try {
|
|
659
658
|
const result = await MetadataTypeInfo[type].deleteByKey(key);
|
|
660
659
|
status &&= result;
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
import MetadataType from './MetadataType.js';
|
|
4
4
|
import { Util } from '../util/util.js';
|
|
5
5
|
import DataExtension from './DataExtension.js';
|
|
6
|
+
import { confirm } from '@inquirer/prompts';
|
|
6
7
|
|
|
7
8
|
/**
|
|
8
9
|
* @typedef {import('../../types/mcdev.d.js').BuObject} BuObject
|
|
@@ -303,70 +304,122 @@ class DataExtensionField extends MetadataType {
|
|
|
303
304
|
* @returns {Promise.<boolean>} deletion success flag
|
|
304
305
|
*/
|
|
305
306
|
static async deleteByKeySOAP(customerKey, fieldId) {
|
|
306
|
-
const [deKey,
|
|
307
|
-
customerKey = `[${deKey}].[${
|
|
307
|
+
const [deKey, fieldName] = customerKey.split('.');
|
|
308
|
+
customerKey = `[${deKey}].[${fieldName}]`;
|
|
308
309
|
|
|
309
310
|
let fieldObjectID = fieldId;
|
|
311
|
+
let deletionQueue;
|
|
312
|
+
|
|
310
313
|
// get the object id
|
|
311
314
|
if (!fieldObjectID) {
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
315
|
+
if (deKey === '*') {
|
|
316
|
+
const response = await this.retrieveForCacheDE(
|
|
317
|
+
{
|
|
318
|
+
filter: {
|
|
319
|
+
leftOperand: 'Name',
|
|
320
|
+
operator: 'equals',
|
|
321
|
+
rightOperand: fieldName,
|
|
322
|
+
},
|
|
318
323
|
},
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
324
|
+
['Name', 'ObjectID', 'DataExtension.CustomerKey']
|
|
325
|
+
);
|
|
326
|
+
deletionQueue = Object.values(response.metadata).map((item) => ({
|
|
327
|
+
fieldObjectID: item.ObjectID,
|
|
328
|
+
fieldName: fieldName,
|
|
329
|
+
deKey: item.DataExtension.CustomerKey,
|
|
330
|
+
}));
|
|
331
|
+
Util.logger.info(
|
|
332
|
+
` - Found ${deletionQueue.length} Data Extensions with field ${fieldName} in your BU:\n - ${deletionQueue
|
|
333
|
+
.map((item) => item.deKey)
|
|
334
|
+
.sort()
|
|
335
|
+
.join('\n - ')}`
|
|
336
|
+
);
|
|
337
|
+
if (deletionQueue.length > 0 && !Util.skipInteraction) {
|
|
338
|
+
const massDelete = await confirm({
|
|
339
|
+
message: `Do you really want to delete that field from all of the above Data Extensions?`,
|
|
340
|
+
default: false,
|
|
341
|
+
});
|
|
342
|
+
if (!massDelete) {
|
|
343
|
+
Util.logger.info(
|
|
344
|
+
` ☇ skipping deletion of ${fieldName} based on user-choice.`
|
|
345
|
+
);
|
|
346
|
+
return false;
|
|
347
|
+
}
|
|
348
|
+
}
|
|
349
|
+
} else {
|
|
350
|
+
const response = await this.retrieveForCacheDE(
|
|
351
|
+
{
|
|
352
|
+
filter: {
|
|
353
|
+
leftOperand: 'CustomerKey',
|
|
354
|
+
operator: 'equals',
|
|
355
|
+
rightOperand: customerKey,
|
|
356
|
+
},
|
|
357
|
+
},
|
|
358
|
+
['Name', 'ObjectID']
|
|
359
|
+
);
|
|
360
|
+
fieldObjectID = response.metadata[customerKey]?.ObjectID;
|
|
361
|
+
}
|
|
323
362
|
}
|
|
324
|
-
if (!fieldObjectID) {
|
|
363
|
+
if (!fieldObjectID && !deletionQueue) {
|
|
325
364
|
Util.logger.error(`Could not find ${customerKey} on your BU`);
|
|
326
365
|
return false;
|
|
366
|
+
} else if (!deletionQueue) {
|
|
367
|
+
deletionQueue = [
|
|
368
|
+
{
|
|
369
|
+
fieldObjectID: fieldObjectID,
|
|
370
|
+
fieldName: fieldName,
|
|
371
|
+
deKey: deKey,
|
|
372
|
+
},
|
|
373
|
+
];
|
|
327
374
|
}
|
|
328
375
|
|
|
329
|
-
|
|
330
|
-
const
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
376
|
+
let success = true;
|
|
377
|
+
const fieldDeletedFromDEKeys = [];
|
|
378
|
+
for (const item of deletionQueue) {
|
|
379
|
+
// normal code
|
|
380
|
+
const keyObj = {
|
|
381
|
+
CustomerKey: item.deKey,
|
|
382
|
+
Fields: {
|
|
383
|
+
Field: {
|
|
384
|
+
ObjectID: item.fieldObjectID,
|
|
385
|
+
},
|
|
335
386
|
},
|
|
336
|
-
}
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
this.client.soap.delete('DataExtension', keyObj, null);
|
|
387
|
+
};
|
|
388
|
+
try {
|
|
389
|
+
// ! we really do need to delete from DataExtension not DataExtensionField here!
|
|
390
|
+
await this.client.soap.delete('DataExtension', keyObj, null);
|
|
341
391
|
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
392
|
+
if (!fieldId) {
|
|
393
|
+
Util.logger.info(
|
|
394
|
+
` - deleted ${this.definition.type}: ${item.deKey}.${item.fieldName}`
|
|
395
|
+
);
|
|
396
|
+
}
|
|
397
|
+
fieldDeletedFromDEKeys.push(item.deKey);
|
|
398
|
+
// return true;
|
|
399
|
+
} catch (ex) {
|
|
400
|
+
const errorMsg = ex.results?.length
|
|
401
|
+
? `${ex.results[0].StatusMessage} (Code ${ex.results[0].ErrorCode})`
|
|
402
|
+
: ex.message;
|
|
403
|
+
Util.logger.error(
|
|
404
|
+
`- error deleting ${this.definition.type} ${item.deKey}.${item.fieldName}: ${errorMsg}`
|
|
405
|
+
);
|
|
354
406
|
|
|
355
|
-
|
|
407
|
+
success = false;
|
|
408
|
+
}
|
|
356
409
|
}
|
|
357
|
-
}
|
|
358
410
|
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
411
|
+
const uniqueDEKeys = [...new Set(fieldDeletedFromDEKeys)];
|
|
412
|
+
if (uniqueDEKeys.length > 0) {
|
|
413
|
+
Util.logger.info(
|
|
414
|
+
Util.getGrayMsg(
|
|
415
|
+
`To refresh your local files, run mcdev r ${this.buObject.credential}/${this.buObject.businessUnit} -m ${uniqueDEKeys
|
|
416
|
+
.map((key) => 'dataExtension:"' + key + '"')
|
|
417
|
+
.sort()
|
|
418
|
+
.join(' ')}`
|
|
419
|
+
)
|
|
420
|
+
);
|
|
421
|
+
}
|
|
422
|
+
return success;
|
|
370
423
|
}
|
|
371
424
|
}
|
|
372
425
|
|
|
@@ -81,7 +81,7 @@ class Folder extends MetadataType {
|
|
|
81
81
|
};
|
|
82
82
|
for (const id of sortPairs) {
|
|
83
83
|
if (!idMap[id]) {
|
|
84
|
-
Util.logger.debug(`
|
|
84
|
+
Util.logger.debug(`id ${id} not found in idMap-obj but in sortPairs-array.`);
|
|
85
85
|
} else if (
|
|
86
86
|
idMap[id].ParentFolder &&
|
|
87
87
|
Number.isSafeInteger(idMap[id].ParentFolder.ID) &&
|
|
@@ -14,6 +14,7 @@ export default {
|
|
|
14
14
|
typeRetrieveByDefault: false,
|
|
15
15
|
typeCdpByDefault: false,
|
|
16
16
|
typeName: 'Data Extension Field',
|
|
17
|
+
deleteSynchronously: true, // should be run one at a time to allow asking for permission to mass-delete if *.fieldname is used
|
|
17
18
|
fields: {
|
|
18
19
|
'Client.ID': {
|
|
19
20
|
isCreateable: false,
|
|
@@ -261,6 +261,12 @@ export default {
|
|
|
261
261
|
retrieving: true,
|
|
262
262
|
template: true,
|
|
263
263
|
},
|
|
264
|
+
'activities[].configurationArguments.isReconcilable': {
|
|
265
|
+
isCreateable: true,
|
|
266
|
+
isUpdateable: true,
|
|
267
|
+
retrieving: true,
|
|
268
|
+
template: true,
|
|
269
|
+
},
|
|
264
270
|
'activities[].configurationArguments.isActivityBatchValidated': {
|
|
265
271
|
isCreateable: true,
|
|
266
272
|
isUpdateable: true,
|
package/lib/util/devops.js
CHANGED
|
@@ -50,11 +50,12 @@ const DevOps = {
|
|
|
50
50
|
async getDeltaList(properties, range, saveToDeployDir, filterPathsCSV, commitHistory) {
|
|
51
51
|
const rangeUserInput = range;
|
|
52
52
|
const filterPaths = filterPathsCSV
|
|
53
|
-
? filterPathsCSV.split(',').map(
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
53
|
+
? filterPathsCSV.split(',').map(
|
|
54
|
+
(filePath) =>
|
|
55
|
+
path
|
|
56
|
+
.normalize(properties.directories.retrieve + filePath)
|
|
57
|
+
.split('\\')
|
|
58
|
+
.join('/') + '/'
|
|
58
59
|
)
|
|
59
60
|
: [properties.directories.retrieve];
|
|
60
61
|
if (range) {
|
|
@@ -271,9 +272,9 @@ const DevOps = {
|
|
|
271
272
|
Util.logger.info(
|
|
272
273
|
`- ✔️ Identified changes: Add/Update=${gitActionsCounter['add/update']}, Move=${gitActionsCounter['move']}, Delete=${gitActionsCounter['delete']}`
|
|
273
274
|
);
|
|
274
|
-
if (gitActionsCounter.delete > 0) {
|
|
275
|
+
if (gitActionsCounter.move > 0 || gitActionsCounter.delete > 0) {
|
|
275
276
|
Util.logger.warn(
|
|
276
|
-
'Please note that
|
|
277
|
+
'Deleted/Changed keys detected! Please note that re-keyed components should have their key changed as a pre-deployment step.'
|
|
277
278
|
);
|
|
278
279
|
}
|
|
279
280
|
Util.logger.info(
|
package/package.json
CHANGED
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?>
|
|
2
|
+
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
|
|
3
|
+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
4
|
+
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
5
|
+
xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing"
|
|
6
|
+
xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"
|
|
7
|
+
xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
|
|
8
|
+
<soap:Header>
|
|
9
|
+
<wsa:Action>RetrieveResponse</wsa:Action>
|
|
10
|
+
<wsa:MessageID>urn:uuid:6d2f81c8-80ab-44d5-8664-206753e7ac8d</wsa:MessageID>
|
|
11
|
+
<wsa:RelatesTo>urn:uuid:a7354389-079e-4844-93b5-af6b7bf1d535</wsa:RelatesTo>
|
|
12
|
+
<wsa:To>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</wsa:To>
|
|
13
|
+
<wsse:Security>
|
|
14
|
+
<wsu:Timestamp wsu:Id="Timestamp-468a08b7-c8fd-44bf-a2c8-fd6063127ca6">
|
|
15
|
+
<wsu:Created>2022-04-21T19:21:52Z</wsu:Created>
|
|
16
|
+
<wsu:Expires>2022-04-21T19:26:52Z</wsu:Expires>
|
|
17
|
+
</wsu:Timestamp>
|
|
18
|
+
</wsse:Security>
|
|
19
|
+
</soap:Header>
|
|
20
|
+
<soap:Body>
|
|
21
|
+
<RetrieveResponseMsg xmlns="http://exacttarget.com/wsdl/partnerAPI">
|
|
22
|
+
<OverallStatus>OK</OverallStatus>
|
|
23
|
+
<RequestID>cfe51e71-6a2b-4cb4-aecd-3777076d63bc</RequestID>
|
|
24
|
+
<Results xsi:type="DataExtensionField">
|
|
25
|
+
<PartnerKey xsi:nil="true" />
|
|
26
|
+
<ObjectID>42760528-a8c5-44dd-8c1d-ff34e5daee54</ObjectID>
|
|
27
|
+
<CustomerKey>[testExisting_dataExtension].[FirstName]</CustomerKey>
|
|
28
|
+
<Name>FirstName</Name>
|
|
29
|
+
<Scale>0</Scale>
|
|
30
|
+
<DefaultValue />
|
|
31
|
+
<MaxLength>50</MaxLength>
|
|
32
|
+
<IsRequired>false</IsRequired>
|
|
33
|
+
<Ordinal>0</Ordinal>
|
|
34
|
+
<IsPrimaryKey>false</IsPrimaryKey>
|
|
35
|
+
<FieldType>Text</FieldType>
|
|
36
|
+
<DataExtension>
|
|
37
|
+
<PartnerKey xsi:nil="true" />
|
|
38
|
+
<ObjectID xsi:nil="true" />
|
|
39
|
+
<CustomerKey>testExisting_dataExtension</CustomerKey>
|
|
40
|
+
</DataExtension>
|
|
41
|
+
</Results>
|
|
42
|
+
<Results xsi:type="DataExtensionField">
|
|
43
|
+
<PartnerKey xsi:nil="true" />
|
|
44
|
+
<ObjectID>5ccee5f6-f282-4741-899d-400b05c57425</ObjectID>
|
|
45
|
+
<CustomerKey>[testExisting_event - 2024-07-05T080154625].[FirstName]</CustomerKey>
|
|
46
|
+
<Name>FirstName</Name>
|
|
47
|
+
<DefaultValue />
|
|
48
|
+
<MaxLength>256</MaxLength>
|
|
49
|
+
<IsRequired>false</IsRequired>
|
|
50
|
+
<Ordinal>4</Ordinal>
|
|
51
|
+
<IsPrimaryKey>false</IsPrimaryKey>
|
|
52
|
+
<FieldType>Text</FieldType>
|
|
53
|
+
<DataExtension>
|
|
54
|
+
<PartnerKey xsi:nil="true" />
|
|
55
|
+
<ObjectID xsi:nil="true" />
|
|
56
|
+
<CustomerKey>testExisting_event - 2024-07-05T080154625</CustomerKey>
|
|
57
|
+
</DataExtension>
|
|
58
|
+
</Results>
|
|
59
|
+
<Results xsi:type="DataExtensionField">
|
|
60
|
+
<PartnerKey xsi:nil="true" />
|
|
61
|
+
<ObjectID>5ccee5f6-f282-4741-899d-400b05c57425</ObjectID>
|
|
62
|
+
<CustomerKey>[testNew_event_withSchema - 2024-07-08T014814443].[FirstName]</CustomerKey>
|
|
63
|
+
<Name>FirstName</Name>
|
|
64
|
+
<DefaultValue />
|
|
65
|
+
<MaxLength>256</MaxLength>
|
|
66
|
+
<IsRequired>false</IsRequired>
|
|
67
|
+
<Ordinal>4</Ordinal>
|
|
68
|
+
<IsPrimaryKey>false</IsPrimaryKey>
|
|
69
|
+
<FieldType>Text</FieldType>
|
|
70
|
+
<DataExtension>
|
|
71
|
+
<PartnerKey xsi:nil="true" />
|
|
72
|
+
<ObjectID xsi:nil="true" />
|
|
73
|
+
<CustomerKey>testNew_event_withSchema - 2024-07-08T014814443</CustomerKey>
|
|
74
|
+
</DataExtension>
|
|
75
|
+
</Results>
|
|
76
|
+
</RetrieveResponseMsg>
|
|
77
|
+
</soap:Body>
|
|
78
|
+
</soap:Envelope>
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?>
|
|
2
|
+
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
|
|
3
|
+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
4
|
+
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
5
|
+
xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing"
|
|
6
|
+
xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"
|
|
7
|
+
xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
|
|
8
|
+
<soap:Header>
|
|
9
|
+
<wsa:Action>RetrieveResponse</wsa:Action>
|
|
10
|
+
<wsa:MessageID>urn:uuid:6d2f81c8-80ab-44d5-8664-206753e7ac8d</wsa:MessageID>
|
|
11
|
+
<wsa:RelatesTo>urn:uuid:a7354389-079e-4844-93b5-af6b7bf1d535</wsa:RelatesTo>
|
|
12
|
+
<wsa:To>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</wsa:To>
|
|
13
|
+
<wsse:Security>
|
|
14
|
+
<wsu:Timestamp wsu:Id="Timestamp-468a08b7-c8fd-44bf-a2c8-fd6063127ca6">
|
|
15
|
+
<wsu:Created>2022-04-21T19:21:52Z</wsu:Created>
|
|
16
|
+
<wsu:Expires>2022-04-21T19:26:52Z</wsu:Expires>
|
|
17
|
+
</wsu:Timestamp>
|
|
18
|
+
</wsse:Security>
|
|
19
|
+
</soap:Header>
|
|
20
|
+
<soap:Body>
|
|
21
|
+
<RetrieveResponseMsg xmlns="http://exacttarget.com/wsdl/partnerAPI">
|
|
22
|
+
<OverallStatus>OK</OverallStatus>
|
|
23
|
+
<RequestID>cfe51e71-6a2b-4cb4-aecd-3777076d63bc</RequestID>
|
|
24
|
+
<Results xsi:type="DataExtensionField">
|
|
25
|
+
<PartnerKey xsi:nil="true" />
|
|
26
|
+
<ObjectID>bea0e308-5d45-4181-a673-da9972a7c674</ObjectID>
|
|
27
|
+
<CustomerKey>[testExisting_dataExtension].[LastName]</CustomerKey>
|
|
28
|
+
<Name>LastName</Name>
|
|
29
|
+
<Scale>0</Scale>
|
|
30
|
+
<DefaultValue />
|
|
31
|
+
<MaxLength>50</MaxLength>
|
|
32
|
+
<IsRequired>false</IsRequired>
|
|
33
|
+
<Ordinal>1</Ordinal>
|
|
34
|
+
<IsPrimaryKey>false</IsPrimaryKey>
|
|
35
|
+
<FieldType>Text</FieldType>
|
|
36
|
+
<DataExtension>
|
|
37
|
+
<PartnerKey xsi:nil="true" />
|
|
38
|
+
<ObjectID xsi:nil="true" />
|
|
39
|
+
<CustomerKey>testExisting_dataExtension</CustomerKey>
|
|
40
|
+
</DataExtension>
|
|
41
|
+
</Results>
|
|
42
|
+
<Results xsi:type="DataExtensionField">
|
|
43
|
+
<PartnerKey xsi:nil="true" />
|
|
44
|
+
<ObjectID>95948e52-e8d0-4908-98a9-cc34cd84233e</ObjectID>
|
|
45
|
+
<CustomerKey>[testExisting_event - 2024-07-05T080154625].[LastName]</CustomerKey>
|
|
46
|
+
<Name>LastName</Name>
|
|
47
|
+
<DefaultValue />
|
|
48
|
+
<MaxLength>256</MaxLength>
|
|
49
|
+
<IsRequired>false</IsRequired>
|
|
50
|
+
<Ordinal>5</Ordinal>
|
|
51
|
+
<IsPrimaryKey>false</IsPrimaryKey>
|
|
52
|
+
<FieldType>Text</FieldType>
|
|
53
|
+
<DataExtension>
|
|
54
|
+
<PartnerKey xsi:nil="true" />
|
|
55
|
+
<ObjectID xsi:nil="true" />
|
|
56
|
+
<CustomerKey>testExisting_event - 2024-07-05T080154625</CustomerKey>
|
|
57
|
+
</DataExtension>
|
|
58
|
+
</Results>
|
|
59
|
+
<Results xsi:type="DataExtensionField">
|
|
60
|
+
<PartnerKey xsi:nil="true" />
|
|
61
|
+
<ObjectID>95948e52-e8d0-4908-98a9-cc34cd84233e</ObjectID>
|
|
62
|
+
<CustomerKey>[testNew_event_withSchema - 2024-07-08T014814443].[LastName]</CustomerKey>
|
|
63
|
+
<Name>LastName</Name>
|
|
64
|
+
<DefaultValue />
|
|
65
|
+
<MaxLength>256</MaxLength>
|
|
66
|
+
<IsRequired>false</IsRequired>
|
|
67
|
+
<Ordinal>5</Ordinal>
|
|
68
|
+
<IsPrimaryKey>false</IsPrimaryKey>
|
|
69
|
+
<FieldType>Text</FieldType>
|
|
70
|
+
<DataExtension>
|
|
71
|
+
<PartnerKey xsi:nil="true" />
|
|
72
|
+
<ObjectID xsi:nil="true" />
|
|
73
|
+
<CustomerKey>testNew_event_withSchema - 2024-07-08T014814443</CustomerKey>
|
|
74
|
+
</DataExtension>
|
|
75
|
+
</Results>
|
|
76
|
+
</RetrieveResponseMsg>
|
|
77
|
+
</soap:Body>
|
|
78
|
+
</soap:Envelope>
|
|
@@ -348,20 +348,6 @@ describe('type: dataExtension', () => {
|
|
|
348
348
|
assert.equal(isDeleted, true, 'should have deleted the item');
|
|
349
349
|
return;
|
|
350
350
|
});
|
|
351
|
-
|
|
352
|
-
it('Should delete the dataExtensionField', async () => {
|
|
353
|
-
// WHEN
|
|
354
|
-
const isDeleted = await handler.deleteByKey(
|
|
355
|
-
'testInstance/testBU',
|
|
356
|
-
'dataExtensionField',
|
|
357
|
-
'testExisting_dataExtension.LastName'
|
|
358
|
-
);
|
|
359
|
-
// THEN
|
|
360
|
-
assert.equal(process.exitCode, 0, 'delete should not have thrown an error');
|
|
361
|
-
|
|
362
|
-
assert.equal(isDeleted, true, 'should have deleted the item');
|
|
363
|
-
return;
|
|
364
|
-
});
|
|
365
351
|
});
|
|
366
352
|
|
|
367
353
|
describe('CI/CD ================', () => {
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import * as chai from 'chai';
|
|
2
|
+
const assert = chai.assert;
|
|
3
|
+
|
|
4
|
+
import chaiFiles from 'chai-files';
|
|
5
|
+
import * as testUtils from './utils.js';
|
|
6
|
+
import handler from '../lib/index.js';
|
|
7
|
+
chai.use(chaiFiles);
|
|
8
|
+
|
|
9
|
+
describe('type: dataExtensionField', () => {
|
|
10
|
+
beforeEach(() => {
|
|
11
|
+
testUtils.mockSetup();
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
afterEach(() => {
|
|
15
|
+
testUtils.mockReset();
|
|
16
|
+
});
|
|
17
|
+
|
|
18
|
+
describe('Delete ================', () => {
|
|
19
|
+
it('Should delete the dataExtensionField', async () => {
|
|
20
|
+
// WHEN
|
|
21
|
+
const isDeleted = await handler.deleteByKey(
|
|
22
|
+
'testInstance/testBU',
|
|
23
|
+
'dataExtensionField',
|
|
24
|
+
'testExisting_dataExtension.LastName'
|
|
25
|
+
);
|
|
26
|
+
// THEN
|
|
27
|
+
assert.equal(process.exitCode, 0, 'delete should not have thrown an error');
|
|
28
|
+
|
|
29
|
+
assert.equal(isDeleted, true, 'should have deleted the item');
|
|
30
|
+
|
|
31
|
+
assert.equal(
|
|
32
|
+
testUtils.getAPIHistoryLength(),
|
|
33
|
+
2,
|
|
34
|
+
'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests'
|
|
35
|
+
);
|
|
36
|
+
return;
|
|
37
|
+
});
|
|
38
|
+
|
|
39
|
+
it('Should mass-delete the dataExtensionField across all dataExtensions', async () => {
|
|
40
|
+
handler.setOptions({ skipInteraction: true });
|
|
41
|
+
// WHEN
|
|
42
|
+
const isDeleted = await handler.deleteByKey(
|
|
43
|
+
'testInstance/testBU',
|
|
44
|
+
'dataExtensionField',
|
|
45
|
+
'*.LastName'
|
|
46
|
+
);
|
|
47
|
+
// THEN
|
|
48
|
+
assert.equal(process.exitCode, 0, 'delete should not have thrown an error');
|
|
49
|
+
|
|
50
|
+
assert.equal(isDeleted, true, 'should have deleted the item');
|
|
51
|
+
|
|
52
|
+
assert.equal(
|
|
53
|
+
testUtils.getAPIHistoryLength(),
|
|
54
|
+
4,
|
|
55
|
+
'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests'
|
|
56
|
+
);
|
|
57
|
+
return;
|
|
58
|
+
});
|
|
59
|
+
|
|
60
|
+
it('Should mass-delete multiple dataExtensionFields across all dataExtensions', async () => {
|
|
61
|
+
handler.setOptions({ skipInteraction: true });
|
|
62
|
+
// WHEN
|
|
63
|
+
const isDeleted = await handler.deleteByKey(
|
|
64
|
+
'testInstance/testBU',
|
|
65
|
+
'dataExtensionField',
|
|
66
|
+
['*.FirstName', '*.LastName']
|
|
67
|
+
);
|
|
68
|
+
// THEN
|
|
69
|
+
assert.equal(process.exitCode, 0, 'delete should not have thrown an error');
|
|
70
|
+
|
|
71
|
+
assert.equal(isDeleted, true, 'should have deleted the item');
|
|
72
|
+
|
|
73
|
+
assert.equal(
|
|
74
|
+
testUtils.getAPIHistoryLength(),
|
|
75
|
+
8,
|
|
76
|
+
'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests'
|
|
77
|
+
);
|
|
78
|
+
return;
|
|
79
|
+
});
|
|
80
|
+
});
|
|
81
|
+
});
|