mcdev 5.0.2 → 5.2.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/.coverage-comment-template.svelte +177 -161
- package/.eslintrc.json +4 -4
- package/.github/ISSUE_TEMPLATE/bug.yml +2 -0
- package/.github/PULL_REQUEST_TEMPLATE.md +2 -2
- package/.github/dependabot.yml +8 -0
- package/.github/workflows/coverage-base-update.yml +6 -2
- package/.github/workflows/coverage-develop-branch.yml +7 -8
- package/.github/workflows/coverage-main-branch.yml +7 -8
- package/.github/workflows/coverage.yml +7 -4
- package/.husky/post-checkout +4 -2
- package/.husky/post-merge +1 -0
- package/.vscode/extensions.json +4 -0
- package/docs/dist/documentation.md +756 -294
- package/lib/Deployer.js +28 -28
- package/lib/MetadataTypeDefinitions.js +1 -1
- package/lib/MetadataTypeInfo.js +1 -1
- package/lib/Retriever.js +1 -1
- package/lib/cli.js +184 -6
- package/lib/index.js +493 -22
- package/lib/metadataTypes/Asset.js +10 -11
- package/lib/metadataTypes/AttributeGroup.js +76 -2
- package/lib/metadataTypes/AttributeSet.js +260 -0
- package/lib/metadataTypes/Automation.js +771 -247
- package/lib/metadataTypes/DataExtension.js +7 -7
- package/lib/metadataTypes/DataExtensionField.js +1 -1
- package/lib/metadataTypes/Event.js +2 -3
- package/lib/metadataTypes/Folder.js +1 -1
- package/lib/metadataTypes/Journey.js +5 -6
- package/lib/metadataTypes/MetadataType.js +187 -60
- package/lib/metadataTypes/MobileKeyword.js +8 -8
- package/lib/metadataTypes/MobileMessage.js +5 -5
- package/lib/metadataTypes/Query.js +47 -5
- package/lib/metadataTypes/Script.js +3 -3
- package/lib/metadataTypes/TransactionalSMS.js +5 -5
- package/lib/metadataTypes/TriggeredSend.js +25 -50
- package/lib/metadataTypes/User.js +7 -4
- package/lib/metadataTypes/definitions/Asset.definition.js +1 -0
- package/lib/metadataTypes/definitions/AttributeGroup.definition.js +117 -106
- package/lib/metadataTypes/definitions/{SetDefinition.definition.js → AttributeSet.definition.js} +54 -27
- package/lib/metadataTypes/definitions/Automation.definition.js +74 -21
- package/lib/metadataTypes/definitions/DataExtension.definition.js +1 -0
- package/lib/metadataTypes/definitions/DataExtract.definition.js +1 -0
- package/lib/metadataTypes/definitions/EmailSend.definition.js +1 -0
- package/lib/metadataTypes/definitions/Event.definition.js +1 -0
- package/lib/metadataTypes/definitions/Filter.definition.js +1 -0
- package/lib/metadataTypes/definitions/ImportFile.definition.js +37 -6
- package/lib/metadataTypes/definitions/MobileKeyword.definition.js +1 -0
- package/lib/metadataTypes/definitions/Query.definition.js +1 -0
- package/lib/metadataTypes/definitions/Role.definition.js +1 -0
- package/lib/metadataTypes/definitions/TriggeredSend.definition.js +2 -0
- package/lib/metadataTypes/definitions/User.definition.js +1 -0
- package/lib/util/cache.js +9 -4
- package/lib/util/cli.js +40 -0
- package/lib/util/devops.js +13 -11
- package/lib/util/file.js +2 -2
- package/lib/util/init.js +84 -0
- package/lib/util/util.js +268 -137
- package/package.json +11 -11
- package/test/general.test.js +26 -0
- package/test/mockRoot/.mcdevrc.json +1 -1
- package/test/mockRoot/deploy/testInstance/testBU/automation/testExisting_automation.automation-meta.json +52 -0
- package/test/mockRoot/deploy/testInstance/testBU/automation/testNew_automation.automation-meta.json +45 -0
- package/test/mockRoot/deploy/testInstance/testBU/dataExtract/testExisting_dataExtract.dataExtract-meta.json +35 -0
- package/test/mockRoot/deploy/testInstance/testBU/dataExtract/testNew_dataExtract.dataExtract-meta.json +35 -0
- package/test/mockRoot/deploy/testInstance/testBU/fileTransfer/testExisting_fileTransfer.fileTransfer-meta.json +17 -0
- package/test/mockRoot/deploy/testInstance/testBU/fileTransfer/testNew_fileTransfer.fileTransfer-meta.json +17 -0
- package/test/mockRoot/deploy/testInstance/testBU/importFile/testExisting_importFile.importFile-meta.json +29 -0
- package/test/mockRoot/deploy/testInstance/testBU/importFile/testNew_importFile.importFile-meta.json +29 -0
- package/test/mockRoot/deploy/testInstance/testBU/query/{testExistingQuery.query-meta.json → testExisting_query.query-meta.json} +2 -2
- package/test/mockRoot/deploy/testInstance/testBU/query/testExisting_query_fixKeys.query-meta.json +11 -0
- package/test/mockRoot/deploy/testInstance/testBU/query/testExisting_query_fixKeys.query-meta.sql +6 -0
- package/test/mockRoot/deploy/testInstance/testBU/query/{testNewQuery.query-meta.json → testNew_query.query-meta.json} +2 -2
- package/test/mockRoot/deploy/testInstance/testBU/script/testExisting_script.script-meta.json +6 -0
- package/test/mockRoot/deploy/testInstance/testBU/script/testExisting_script.script-meta.ssjs +1 -0
- package/test/mockRoot/deploy/testInstance/testBU/script/testNew_script.script-meta.json +6 -0
- package/test/mockRoot/deploy/testInstance/testBU/script/testNew_script.script-meta.ssjs +1 -0
- package/test/mockRoot/deploy/testInstance/testBU/triggeredSend/testExisting_triggeredSend.triggeredSend-meta.json +29 -0
- package/test/mockRoot/deploy/testInstance/testBU/triggeredSend/testNew_triggeredSend.triggeredSend-meta.json +29 -0
- package/test/resourceFactory.js +132 -24
- package/test/resources/1111111/accountUser/retrieve-ActiveFlag=falseANDCustomerKey=testExisting_userANDEmaillike@-response.xml +27 -0
- package/test/resources/1111111/accountUser/retrieve-ActiveFlag=falseANDEmaillike@-response.xml +156 -0
- package/test/resources/1111111/accountUser/retrieve-ActiveFlag=trueANDEmailisNullORNamelikeapp userANDMustChangePassword=false-response.xml +87 -0
- package/test/resources/1111111/accountUser/retrieve-ActiveFlag=trueANDEmaillike@-response.xml +156 -0
- package/test/resources/1111111/accountUser/retrieve-CustomerKey=testExisting_userANDActiveFlag=trueANDEmailisNullORNamelikeapp userANDMustChangePassword=false-response.xml +27 -0
- package/test/resources/1111111/accountUserAccount/retrieve-AccountUser.AccountUserID=700301950-response.xml +60 -0
- package/test/resources/1111111/user/retrieve-expected.md +4 -2
- package/test/resources/9999999/attributeGroup/retrieve-expected.json +25 -0
- package/test/resources/9999999/attributeSet/retrieve-expected.json +748 -0
- package/test/resources/9999999/automation/build-expected.json +57 -0
- package/test/resources/9999999/automation/create-expected.json +45 -0
- package/test/resources/9999999/automation/create-testNew_automation-expected.md +28 -0
- package/test/resources/9999999/automation/delete-response.xml +40 -0
- package/test/resources/9999999/automation/patch_fixKeys-pause-expected.json +44 -0
- package/test/resources/9999999/automation/patch_fixKeys-schedule-expected.json +44 -0
- package/test/resources/9999999/automation/perform-08afb0e2-b00a-4c88-ad2e-1f7f8788c560-response.xml +42 -0
- package/test/resources/9999999/automation/perform-08afb0e2-b00a-4c88-fixKey_pause-response.xml +42 -0
- package/test/resources/9999999/automation/perform-08afb0e2-b00a-4c88-fixKey_schedule-response.xml +42 -0
- package/test/resources/9999999/automation/perform-a8afb0e2-b00a-4c88-ad2e-1f7f8788c560-response.xml +42 -0
- package/test/resources/9999999/automation/retrieve-expected.json +57 -0
- package/test/resources/9999999/automation/retrieve-testExisting_automation-expected.md +30 -0
- package/test/resources/9999999/automation/schedule-08afb0e2-b00a-4c88-ad2e-1f7f8788c560-response.xml +52 -0
- package/test/resources/9999999/automation/schedule-08afb0e2-b00a-4c88-ad2e-pause-response.xml +38 -0
- package/test/resources/9999999/automation/schedule-08afb0e2-b00a-4c88-fixKey_pause-response.xml +52 -0
- package/test/resources/9999999/automation/schedule-08afb0e2-b00a-4c88-fixKey_schedule-response.xml +52 -0
- package/test/resources/9999999/automation/schedule-a8afb0e2-b00a-4c88-ad2e-1f7f8788c560-response.xml +52 -0
- package/test/resources/9999999/automation/template-expected.json +57 -0
- package/test/resources/9999999/automation/update-expected.json +45 -0
- package/test/resources/9999999/automation/update-testExisting_automation-expected.md +28 -0
- package/test/resources/9999999/automation/v1/automations/08afb0e2-b00a-4c88-ad2e-1f7f8788c560/get-response.json +85 -0
- package/test/resources/9999999/automation/v1/automations/08afb0e2-b00a-4c88-ad2e-1f7f8788c560/patch-response.json +85 -0
- package/test/resources/9999999/automation/v1/automations/08afb0e2-b00a-4c88-ad2e-pause/get-response.json +85 -0
- package/test/resources/9999999/automation/v1/automations/08afb0e2-b00a-4c88-ad2e-pause/patch-response.json +85 -0
- package/test/resources/9999999/automation/v1/automations/08afb0e2-b00a-4c88-fixKey_pause/get-response.json +85 -0
- package/test/resources/9999999/automation/v1/automations/08afb0e2-b00a-4c88-fixKey_pause/patch-response.json +85 -0
- package/test/resources/9999999/automation/v1/automations/08afb0e2-b00a-4c88-fixKey_schedule/get-response.json +85 -0
- package/test/resources/9999999/automation/v1/automations/08afb0e2-b00a-4c88-fixKey_schedule/patch-response.json +85 -0
- package/test/resources/9999999/automation/v1/automations/a8afb0e2-b00a-4c88-ad2e-1f7f8788c560/get-response.json +85 -0
- package/test/resources/9999999/automation/v1/automations/post-response.json +86 -0
- package/test/resources/9999999/automation/v1/dataextracts/56c5370a-f988-4f36-b0ee-0f876573f6d7/get-response.json +38 -0
- package/test/resources/9999999/automation/v1/dataextracts/56c5370a-f988-4f36-b0ee-0f876573f6d7/patch-response.json +38 -0
- package/test/resources/9999999/automation/v1/dataextracts/get-response.json +20 -0
- package/test/resources/9999999/automation/v1/dataextracts/post-response.json +38 -0
- package/test/resources/9999999/automation/v1/dataextracttypes/get-response.json +50 -0
- package/test/resources/9999999/automation/v1/filetransfers/72c328ac-f5b0-4e37-91d3-a775666f15a6/get-response.json +18 -0
- package/test/resources/9999999/automation/v1/filetransfers/72c328ac-f5b0-4e37-91d3-a775666f15a6/patch-response.json +18 -0
- package/test/resources/9999999/automation/v1/filetransfers/get-response.json +15 -0
- package/test/resources/9999999/automation/v1/filetransfers/post-response.json +18 -0
- package/test/resources/9999999/automation/v1/ftplocations/get-response.json +18 -0
- package/test/resources/9999999/automation/v1/imports/9d16f42c-2260-ed11-b849-48df37d1de8b/patch-response.json +31 -0
- package/test/resources/9999999/automation/v1/imports/get-response.json +38 -0
- package/test/resources/9999999/automation/v1/imports/post-response.json +30 -0
- package/test/resources/9999999/automation/v1/queries/549f0568-607c-4940-afef-437965094dae/actions/start/post-response.txt +1 -0
- package/test/resources/9999999/automation/v1/queries/549f0568-607c-4940-afef-437965094dat/actions/start/post-response.txt +1 -0
- package/test/resources/9999999/automation/v1/queries/549f0568-607c-4940-afef-437965094dat/get-response.json +2 -2
- package/test/resources/9999999/automation/v1/queries/549f0568-607c-4940-afef-437965094dat/patch-response.json +2 -2
- package/test/resources/9999999/automation/v1/queries/549f0568-607c-4940-afef-437965094dat_fixKeys/get-response.json +17 -0
- package/test/resources/9999999/automation/v1/queries/549f0568-607c-4940-afef-437965094dat_fixKeys/patch-response.json +18 -0
- package/test/resources/9999999/automation/v1/queries/get-response.json +22 -5
- package/test/resources/9999999/automation/v1/queries/post-response.json +2 -2
- package/test/resources/9999999/automation/v1/scripts/39f6a488-20eb-4ba0-b0b9-023725b574e4/patch-response.json +10 -0
- package/test/resources/9999999/automation/v1/scripts/get-response.json +27 -0
- package/test/resources/9999999/automation/v1/scripts/post-response.json +10 -0
- package/test/resources/9999999/dataExtension/retrieve-Name=testExisting_dataExtension-response.xml +52 -0
- package/test/resources/9999999/dataExtensionField/retrieve-DataExtension.CustomerKey=testExisting_dataExtension-response.xml +98 -0
- package/test/resources/9999999/dataExtensionField/retrieve-DataExtension.CustomerKey=testNew_dataExtensionORDataExtension.CustomerKey=testExisting_dataExtension-response.xml +99 -0
- package/test/resources/9999999/dataExtract/build-expected.json +35 -0
- package/test/resources/9999999/dataExtract/get-expected.json +39 -0
- package/test/resources/9999999/dataExtract/patch-expected.json +37 -0
- package/test/resources/9999999/dataExtract/post-expected.json +37 -0
- package/test/resources/9999999/dataExtract/template-expected.json +35 -0
- package/test/resources/9999999/dataFolder/retrieve-ContentType=automations-response.xml +48 -0
- package/test/resources/9999999/dataFolder/retrieve-ContentType=contextual_suppression_listORContentType=publicationORContentType=suppression_listORContentType=mysubsORContentType=list-response.xml +136 -0
- package/test/resources/9999999/dataFolder/retrieve-ContentType=queryactivity-response.xml +48 -0
- package/test/resources/9999999/dataFolder/retrieve-ContentType=ssjsactivity-response.xml +48 -0
- package/test/resources/9999999/dataFolder/retrieve-ContentType=triggered_send_journeybuilderORContentType=triggered_sendORContentType=hidden-response.xml +276 -0
- package/test/resources/9999999/dataFolder/retrieve-response.xml +45 -0
- package/test/resources/9999999/email/retrieve-response.xml +203 -0
- package/test/resources/9999999/emailSendDefinition/retrieve-IsPlatformObject=falseANDDescriptionnotEqualsSFSendDefinition-response.xml +85 -0
- package/test/resources/9999999/fileTransfer/build-expected.json +15 -0
- package/test/resources/9999999/fileTransfer/get-expected.json +17 -0
- package/test/resources/9999999/fileTransfer/patch-expected.json +17 -0
- package/test/resources/9999999/fileTransfer/post-expected.json +17 -0
- package/test/resources/9999999/fileTransfer/template-expected.json +15 -0
- package/test/resources/9999999/hub/v1/contacts/schema/attributeGroups/get-response.json +585 -0
- package/test/resources/9999999/hub/v1/contacts/schema/setDefinitions/get-response.json +19807 -0
- package/test/resources/9999999/importFile/build-expected.json +27 -0
- package/test/resources/9999999/importFile/get-expected.json +29 -0
- package/test/resources/9999999/importFile/patch-expected.json +29 -0
- package/test/resources/9999999/importFile/post-expected.json +29 -0
- package/test/resources/9999999/importFile/template-expected.json +27 -0
- package/test/resources/9999999/legacy/v1/beta/automations/notifications/RkpOcE9qSVh2VUdnYTVJbWFfWW14dzoyNTow/get-response.json +21 -0
- package/test/resources/9999999/legacy/v1/beta/automations/notifications/RkpOcE9qSVh2VUdnYTVJbWFfWW14dzoyNTow/post-response.json +0 -0
- package/test/resources/9999999/legacy/v1/beta/bulk/automations/automation/definition/get-response.json +30 -0
- package/test/resources/9999999/program/retrieve-CustomerKey=testExisting_automation-response.xml +30 -0
- package/test/resources/9999999/program/retrieve-CustomerKey=testExisting_automation_fixKey_pause-response.xml +32 -0
- package/test/resources/9999999/program/retrieve-CustomerKey=testExisting_automation_fixKey_schedule-response.xml +32 -0
- package/test/resources/9999999/program/retrieve-CustomerKey=testExisting_automation_fixedKey_paused-response.xml +32 -0
- package/test/resources/9999999/program/retrieve-CustomerKey=testExisting_automation_fixedKey_scheduled-response.xml +32 -0
- package/test/resources/9999999/program/retrieve-CustomerKey=testExisting_automation_pause-response.xml +30 -0
- package/test/resources/9999999/program/retrieve-CustomerKey=testNew_automation-response.xml +30 -0
- package/test/resources/9999999/program/retrieve-Name=testExisting_automation-response.xml +31 -0
- package/test/resources/9999999/program/retrieve-response.xml +50 -0
- package/test/resources/9999999/query/build-expected.json +2 -2
- package/test/resources/9999999/query/get-expected.json +2 -2
- package/test/resources/9999999/query/get2-expected.json +2 -2
- package/test/resources/9999999/query/patch-expected.json +2 -2
- package/test/resources/9999999/query/patch_fixKeys-expected.json +11 -0
- package/test/resources/9999999/query/patch_fixKeys-expected.sql +6 -0
- package/test/resources/9999999/query/post-expected.json +2 -2
- package/test/resources/9999999/query/template-expected.json +2 -2
- package/test/resources/9999999/queryDefinition/retrieve-CustomerKey=testExisting_query_fixKeysANDStatus=Active-response.xml +30 -0
- package/test/resources/9999999/queryDefinition/retrieve-CustomerKey=testExisting_query_fixedKeysANDStatus=Active-response.xml +30 -0
- package/test/resources/9999999/queryDefinition/retrieve-CustomerKey=testNew_queryANDStatus=Active-response.xml +30 -0
- package/test/resources/9999999/script/build-expected.json +6 -0
- package/test/resources/9999999/script/build-expected.ssjs +1 -0
- package/test/resources/9999999/script/get-expected.json +8 -0
- package/test/resources/9999999/script/get-expected.ssjs +1 -0
- package/test/resources/9999999/script/get_noScriptTag-expected.html +1 -0
- package/test/resources/9999999/script/get_noScriptTag-expected.json +8 -0
- package/test/resources/9999999/script/patch-expected.json +8 -0
- package/test/resources/9999999/script/patch-expected.ssjs +1 -0
- package/test/resources/9999999/script/post-expected.json +8 -0
- package/test/resources/9999999/script/post-expected.ssjs +1 -0
- package/test/resources/9999999/script/template-expected.json +6 -0
- package/test/resources/9999999/script/template-expected.ssjs +1 -0
- package/test/resources/9999999/triggeredSend/build-expected.json +29 -0
- package/test/resources/9999999/triggeredSend/get-expected.json +29 -0
- package/test/resources/9999999/triggeredSend/patch-expected.json +29 -0
- package/test/resources/9999999/triggeredSend/post-expected.json +29 -0
- package/test/resources/9999999/triggeredSend/template-expected.json +29 -0
- package/test/resources/9999999/triggeredSendDefinition/create-response.xml +75 -0
- package/test/resources/9999999/triggeredSendDefinition/delete-response.xml +36 -0
- package/test/resources/9999999/triggeredSendDefinition/{retrieve-response.xml → retrieve-TriggeredSendStatusINNew,Active,Inactive,Moved,Canceled-response.xml} +4 -4
- package/test/resources/9999999/triggeredSendDefinition/update-response.xml +74 -0
- package/test/type.attributeGroup.test.js +55 -0
- package/test/type.attributeSet.test.js +55 -0
- package/test/type.automation.test.js +886 -0
- package/test/type.dataExtension.test.js +3 -1
- package/test/type.dataExtract.test.js +187 -0
- package/test/type.fileTransfer.test.js +185 -0
- package/test/type.importFile.test.js +186 -0
- package/test/type.mobileKeyword.test.js +0 -1
- package/test/type.query.test.js +497 -33
- package/test/type.script.test.js +367 -0
- package/test/type.triggeredSend.test.js +152 -0
- package/test/type.user.test.js +37 -11
- package/test/utils.js +10 -6
- package/.coverage-comment-template.md +0 -20
- package/lib/metadataTypes/SetDefinition.js +0 -37
- /package/test/mockRoot/deploy/testInstance/testBU/query/{testExistingQuery.query-meta.sql → testExisting_query.query-meta.sql} +0 -0
- /package/test/mockRoot/deploy/testInstance/testBU/query/{testNewQuery.query-meta.sql → testNew_query.query-meta.sql} +0 -0
- /package/test/resources/1111111/accountUser/{retrieve-response.xml → retrieve-ActiveFlag=trueANDCustomerKey=testExisting_userANDEmaillike@-response.xml} +0 -0
- /package/test/resources/1111111/accountUserAccount/{retrieve-response.xml → retrieve-AccountUser.AccountUserIDIN700301950,700301951,7471228-response.xml} +0 -0
- /package/test/resources/1111111/businessUnit/{retrieve-response.xml → retrieve-ID=1111111-response.xml} +0 -0
- /package/test/resources/1111111/list/{retrieve-response.xml → retrieve-CustomerKey=All SubscribersORListName=All Subscribers-response.xml} +0 -0
- /package/test/resources/1111111/role/{retrieve-response.xml → retrieve-IsPrivate=false-response.xml} +0 -0
- /package/test/resources/9999999/queryDefinition/{retrieve-response.xml → retrieve-CustomerKey=testExisting_queryANDStatus=Active-response.xml} +0 -0
|
@@ -1,178 +1,194 @@
|
|
|
1
1
|
<script>
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
2
|
+
export let total_statements_coverage_percent_raw;
|
|
3
|
+
export let total_branches_coverage_percent_raw;
|
|
4
|
+
export let total_functions_coverage_percent_raw;
|
|
5
|
+
export let total_lines_coverage_percent_raw;
|
|
6
|
+
|
|
7
|
+
export let base_total_statements_coverage_percent_raw;
|
|
8
|
+
export let base_total_branches_coverage_percent_raw;
|
|
9
|
+
export let base_total_functions_coverage_percent_raw;
|
|
10
|
+
export let base_total_lines_coverage_percent_raw;
|
|
11
|
+
|
|
12
|
+
export let commit_sha;
|
|
13
|
+
export let short_commit_sha;
|
|
14
|
+
export let commit_link;
|
|
15
|
+
|
|
16
|
+
export let base_commit_sha;
|
|
17
|
+
export let base_short_commit_sha;
|
|
18
|
+
export let base_commit_link;
|
|
19
|
+
export let base_ref;
|
|
20
|
+
|
|
21
|
+
export let changed_files_coverage_data;
|
|
22
|
+
|
|
23
|
+
const has_base_data = base_total_branches_coverage_percent_raw !== '?';
|
|
24
|
+
const summary_list = [
|
|
25
|
+
{
|
|
26
|
+
type: 'Total Statements Coverage',
|
|
27
|
+
percent: {
|
|
28
|
+
total: total_statements_coverage_percent_raw,
|
|
29
|
+
base: has_base_data ? base_total_statements_coverage_percent_raw : null,
|
|
30
|
+
diff: has_base_data
|
|
31
|
+
? total_statements_coverage_percent_raw -
|
|
32
|
+
base_total_statements_coverage_percent_raw
|
|
33
|
+
: null,
|
|
34
|
+
},
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
type: 'Total Branches Coverage',
|
|
38
|
+
percent: {
|
|
39
|
+
total: total_branches_coverage_percent_raw,
|
|
40
|
+
base: has_base_data ? base_total_branches_coverage_percent_raw : null,
|
|
41
|
+
diff: has_base_data
|
|
42
|
+
? total_branches_coverage_percent_raw - base_total_branches_coverage_percent_raw
|
|
43
|
+
: null,
|
|
44
|
+
},
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
type: 'Total Functions Coverage',
|
|
48
|
+
percent: {
|
|
49
|
+
total: total_functions_coverage_percent_raw,
|
|
50
|
+
base: has_base_data ? base_total_functions_coverage_percent_raw : null,
|
|
51
|
+
diff: has_base_data
|
|
52
|
+
? total_functions_coverage_percent_raw -
|
|
53
|
+
base_total_functions_coverage_percent_raw
|
|
54
|
+
: null,
|
|
55
|
+
},
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
type: 'Total Lines Coverage',
|
|
59
|
+
percent: {
|
|
60
|
+
total: total_lines_coverage_percent_raw,
|
|
61
|
+
base: has_base_data ? base_total_lines_coverage_percent_raw : null,
|
|
62
|
+
diff: has_base_data
|
|
63
|
+
? total_lines_coverage_percent_raw - base_total_lines_coverage_percent_raw
|
|
64
|
+
: null,
|
|
65
|
+
},
|
|
66
|
+
},
|
|
67
|
+
];
|
|
68
|
+
|
|
69
|
+
const LETTER_LABEL = {
|
|
70
|
+
S: 'Statements',
|
|
71
|
+
B: 'Branches',
|
|
72
|
+
F: 'Functions',
|
|
73
|
+
L: 'Lines',
|
|
74
|
+
};
|
|
75
|
+
|
|
76
|
+
const COVERAGE_LEVEL_IMAGE = {
|
|
77
|
+
low: 'https://user-images.githubusercontent.com/11299391/159445221-fe3dc085-8c56-4e03-9642-219784c88fe7.svg',
|
|
78
|
+
medium: 'https://user-images.githubusercontent.com/11299391/159445212-f135c6d7-f354-4e8c-9a9f-28bb3ff1b7b5.svg',
|
|
79
|
+
high: 'https://user-images.githubusercontent.com/11299391/159445220-d88b3624-0814-4664-80c8-09f0f2b8e68b.svg',
|
|
80
|
+
};
|
|
81
|
+
|
|
82
|
+
function formatPercentDiff(percent) {
|
|
83
|
+
if (!Number.isFinite(percent)) {
|
|
84
|
+
return '';
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
const roundedPercent = `${Number(percent.toFixed(2))}%`;
|
|
88
|
+
|
|
89
|
+
if (percent >= 0) {
|
|
90
|
+
return '+' + roundedPercent;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
return roundedPercent;
|
|
75
94
|
}
|
|
76
95
|
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
96
|
+
function getCoverageLevelImage(percent) {
|
|
97
|
+
// https://github.com/istanbuljs/istanbuljs/blob/c1559005b3bb318da01f505740adb0e782aaf14e/packages/istanbul-lib-report/lib/watermarks.js
|
|
98
|
+
if (percent >= 80) {
|
|
99
|
+
return COVERAGE_LEVEL_IMAGE.high;
|
|
100
|
+
} else if (percent >= 50) {
|
|
101
|
+
return COVERAGE_LEVEL_IMAGE.medium;
|
|
102
|
+
} else {
|
|
103
|
+
return COVERAGE_LEVEL_IMAGE.low;
|
|
104
|
+
}
|
|
81
105
|
}
|
|
82
106
|
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
function getCoverageLevelImage(percent) {
|
|
87
|
-
// https://github.com/istanbuljs/istanbuljs/blob/c1559005b3bb318da01f505740adb0e782aaf14e/packages/istanbul-lib-report/lib/watermarks.js
|
|
88
|
-
if (percent >= 80) {
|
|
89
|
-
return COVERAGE_LEVEL_IMAGE.high;
|
|
90
|
-
} else if (percent >= 50) {
|
|
91
|
-
return COVERAGE_LEVEL_IMAGE.medium;
|
|
92
|
-
} else {
|
|
93
|
-
return COVERAGE_LEVEL_IMAGE.low;
|
|
107
|
+
function getFilePrefix() {
|
|
108
|
+
return `../blob/${commit_sha}/`;
|
|
94
109
|
}
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
function getFilePrefix() {
|
|
98
|
-
return `../blob/${commit_sha}/`;
|
|
99
|
-
}
|
|
100
110
|
</script>
|
|
101
111
|
|
|
102
112
|
<h2>Coverage Report</h2>
|
|
103
113
|
|
|
104
|
-
Commit
|
|
105
|
-
Base: <a href=
|
|
114
|
+
Commit:<a href={commit_link}>{short_commit_sha}</a><br />
|
|
115
|
+
Base: <a href={base_commit_link}>{base_ref}@{base_short_commit_sha}</a><br /><br />
|
|
106
116
|
|
|
107
117
|
<table>
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
{#if has_base_data}
|
|
111
|
-
<th>Base</th>
|
|
112
|
-
{/if}
|
|
113
|
-
<th>This PR</th>
|
|
114
|
-
</thead>
|
|
115
|
-
<tbody>
|
|
116
|
-
{#each summary_list as {type, percent}}
|
|
117
|
-
<tr>
|
|
118
|
-
<td>{type}</td>
|
|
118
|
+
<thead>
|
|
119
|
+
<th>Type</th>
|
|
119
120
|
{#if has_base_data}
|
|
120
|
-
|
|
121
|
-
{#if Number.isFinite(percent.base)}
|
|
122
|
-
<img src="{getCoverageLevelImage(percent.base)}" alt=""> {percent.base}%
|
|
123
|
-
{:else}
|
|
124
|
-
-
|
|
125
|
-
{/if}
|
|
126
|
-
</td>
|
|
121
|
+
<th>Base</th>
|
|
127
122
|
{/if}
|
|
128
|
-
<
|
|
129
|
-
{#if Number.isFinite(percent.total)}
|
|
130
|
-
<img src="{getCoverageLevelImage(percent.total)}" alt=""> {percent.total}%
|
|
131
|
-
{#if has_base_data}
|
|
132
|
-
({formatPercentDiff(percent.diff)})
|
|
133
|
-
{/if}
|
|
134
|
-
{:else}
|
|
135
|
-
-
|
|
136
|
-
{/if}
|
|
137
|
-
</td>
|
|
138
|
-
</tr>
|
|
139
|
-
{/each}
|
|
140
|
-
</tbody>
|
|
141
|
-
</table>
|
|
142
|
-
|
|
143
|
-
<details>
|
|
144
|
-
<summary>Details (changed testable files):</summary><br>
|
|
145
|
-
<table>
|
|
146
|
-
<thead>
|
|
147
|
-
<th>File</th>
|
|
148
|
-
<th>Statements</th>
|
|
149
|
-
<th>Branches</th>
|
|
150
|
-
<th>Functions</th>
|
|
151
|
-
<th>Lines</th>
|
|
123
|
+
<th>This PR</th>
|
|
152
124
|
</thead>
|
|
153
125
|
<tbody>
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
126
|
+
{#each summary_list as { type, percent }}
|
|
127
|
+
<tr>
|
|
128
|
+
<td>{type}</td>
|
|
129
|
+
{#if has_base_data}
|
|
130
|
+
<td>
|
|
131
|
+
{#if Number.isFinite(percent.base)}
|
|
132
|
+
<img
|
|
133
|
+
src={getCoverageLevelImage(percent.base)}
|
|
134
|
+
alt=""
|
|
135
|
+
/> {percent.base}%
|
|
136
|
+
{:else}
|
|
137
|
+
-
|
|
138
|
+
{/if}
|
|
139
|
+
</td>
|
|
140
|
+
{/if}
|
|
141
|
+
<td>
|
|
142
|
+
{#if Number.isFinite(percent.total)}
|
|
143
|
+
<img
|
|
144
|
+
src={getCoverageLevelImage(percent.total)}
|
|
145
|
+
alt=""
|
|
146
|
+
/> {percent.total}%
|
|
147
|
+
{#if has_base_data}
|
|
148
|
+
({formatPercentDiff(percent.diff)})
|
|
149
|
+
{/if}
|
|
150
|
+
{:else}
|
|
151
|
+
-
|
|
152
|
+
{/if}
|
|
153
|
+
</td>
|
|
154
|
+
</tr>
|
|
155
|
+
{/each}
|
|
176
156
|
</tbody>
|
|
177
|
-
|
|
178
|
-
|
|
157
|
+
</table>
|
|
158
|
+
|
|
159
|
+
<details>
|
|
160
|
+
<summary>Details (changed files):</summary><br />
|
|
161
|
+
<table>
|
|
162
|
+
<thead>
|
|
163
|
+
<th>File</th>
|
|
164
|
+
<th>Statements</th>
|
|
165
|
+
<th>Branches</th>
|
|
166
|
+
<th>Functions</th>
|
|
167
|
+
<th>Lines</th>
|
|
168
|
+
</thead>
|
|
169
|
+
<tbody>
|
|
170
|
+
{#each changed_files_coverage_data as [file, data]}
|
|
171
|
+
{@const percents = [
|
|
172
|
+
data.statements.pct,
|
|
173
|
+
data.branches.pct,
|
|
174
|
+
data.functions.pct,
|
|
175
|
+
data.lines.pct,
|
|
176
|
+
]}
|
|
177
|
+
<tr>
|
|
178
|
+
<td>
|
|
179
|
+
<a href="{getFilePrefix()}{file}">{file}</a>
|
|
180
|
+
</td>
|
|
181
|
+
{#each percents as percent}
|
|
182
|
+
<td>
|
|
183
|
+
{#if Number.isFinite(percent)}
|
|
184
|
+
<img src={getCoverageLevelImage(percent)} alt="" /> {percent}%
|
|
185
|
+
{:else}
|
|
186
|
+
-
|
|
187
|
+
{/if}
|
|
188
|
+
</td>
|
|
189
|
+
{/each}
|
|
190
|
+
</tr>
|
|
191
|
+
{/each}
|
|
192
|
+
</tbody>
|
|
193
|
+
</table>
|
|
194
|
+
</details>
|
package/.eslintrc.json
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"env": {
|
|
3
3
|
"es6": true,
|
|
4
|
-
"node": true
|
|
5
|
-
"mocha": true
|
|
4
|
+
"node": true
|
|
6
5
|
},
|
|
7
6
|
"extends": [
|
|
8
7
|
"eslint:recommended",
|
|
@@ -67,7 +66,6 @@
|
|
|
67
66
|
"unicorn/prefer-set-has": "off",
|
|
68
67
|
"unicorn/prefer-spread": "off",
|
|
69
68
|
"unicorn/prefer-string-replace-all": "error",
|
|
70
|
-
"unicorn/unicorn/no-lonely-if": "off",
|
|
71
69
|
"arrow-body-style": ["error", "as-needed"],
|
|
72
70
|
"curly": "error",
|
|
73
71
|
"no-console": "error",
|
|
@@ -84,6 +82,7 @@
|
|
|
84
82
|
}
|
|
85
83
|
}
|
|
86
84
|
],
|
|
85
|
+
"jsdoc/require-param-type": "error",
|
|
87
86
|
"jsdoc/tag-lines": ["warn", "any", { "startLines": 1 }],
|
|
88
87
|
"spaced-comment": ["warn", "always", { "block": { "exceptions": ["*"], "balanced": true } }]
|
|
89
88
|
},
|
|
@@ -103,7 +102,8 @@
|
|
|
103
102
|
"extends": ["plugin:mocha/recommended"],
|
|
104
103
|
"plugins": ["mocha"],
|
|
105
104
|
"rules": {
|
|
106
|
-
"mocha/no-mocha-arrows": "off"
|
|
105
|
+
"mocha/no-mocha-arrows": "off",
|
|
106
|
+
"mocha/no-pending-tests": "off"
|
|
107
107
|
}
|
|
108
108
|
}
|
|
109
109
|
]
|
package/.github/dependabot.yml
CHANGED
|
@@ -1,8 +1,12 @@
|
|
|
1
|
-
name: Update coverage comment
|
|
1
|
+
name: Update coverage comment # base-update.yml
|
|
2
2
|
on:
|
|
3
3
|
pull_request:
|
|
4
4
|
types: [edited]
|
|
5
5
|
|
|
6
|
+
permissions:
|
|
7
|
+
# allow dependabot to execute this workflow
|
|
8
|
+
pull-requests: write
|
|
9
|
+
|
|
6
10
|
jobs:
|
|
7
11
|
hello_world_job:
|
|
8
12
|
runs-on: ubuntu-latest
|
|
@@ -48,7 +52,7 @@ jobs:
|
|
|
48
52
|
files: 'base-artifacts/coverage-summary.json, artifacts/coverage-summary.json'
|
|
49
53
|
|
|
50
54
|
- name: Update Coverage comment
|
|
51
|
-
uses: sidx1024/report-nyc-coverage-github-action@v1.2.
|
|
55
|
+
uses: sidx1024/report-nyc-coverage-github-action@v1.2.7
|
|
52
56
|
if: steps.check_files.outputs.files_exists == 'true'
|
|
53
57
|
# Only runs if all of the files exists
|
|
54
58
|
with:
|
|
@@ -1,32 +1,31 @@
|
|
|
1
|
-
name: Test coverage for develop branch
|
|
1
|
+
name: Test coverage for develop branch # default-branch.yml
|
|
2
2
|
|
|
3
3
|
on:
|
|
4
4
|
push:
|
|
5
5
|
branches:
|
|
6
6
|
- develop
|
|
7
7
|
|
|
8
|
+
permissions:
|
|
9
|
+
# allow dependabot to execute this workflow
|
|
10
|
+
pull-requests: write
|
|
11
|
+
|
|
8
12
|
jobs:
|
|
9
13
|
hello_world_job:
|
|
10
14
|
runs-on: ubuntu-latest
|
|
11
|
-
name: Test and
|
|
15
|
+
name: Test and upload coverage
|
|
12
16
|
steps:
|
|
13
17
|
- name: Checkout
|
|
14
18
|
uses: actions/checkout@v3
|
|
15
19
|
with:
|
|
16
|
-
ref: ${{ github.event.
|
|
20
|
+
ref: ${{ github.event.ref }}
|
|
17
21
|
fetch-depth: 1000
|
|
18
22
|
|
|
19
|
-
- name: Fetch base
|
|
20
|
-
run: git fetch origin ${{ github.event.pull_request.base.ref }} --depth=1000
|
|
21
|
-
|
|
22
23
|
- uses: actions/setup-node@v3
|
|
23
24
|
with:
|
|
24
25
|
node-version: 16
|
|
25
26
|
|
|
26
27
|
- run: npm ci --ignore-scripts
|
|
27
28
|
|
|
28
|
-
- run: npm run lint
|
|
29
|
-
|
|
30
29
|
- name: Run mcdev-tests with coverage
|
|
31
30
|
run: npm run coverage
|
|
32
31
|
|
|
@@ -1,32 +1,31 @@
|
|
|
1
|
-
name: Test coverage for main branch
|
|
1
|
+
name: Test coverage for main branch # default-branch.yml
|
|
2
2
|
|
|
3
3
|
on:
|
|
4
4
|
push:
|
|
5
5
|
branches:
|
|
6
6
|
- main
|
|
7
7
|
|
|
8
|
+
permissions:
|
|
9
|
+
# allow dependabot to execute this workflow
|
|
10
|
+
pull-requests: write
|
|
11
|
+
|
|
8
12
|
jobs:
|
|
9
13
|
hello_world_job:
|
|
10
14
|
runs-on: ubuntu-latest
|
|
11
|
-
name: Test and
|
|
15
|
+
name: Test and upload coverage
|
|
12
16
|
steps:
|
|
13
17
|
- name: Checkout
|
|
14
18
|
uses: actions/checkout@v3
|
|
15
19
|
with:
|
|
16
|
-
ref: ${{ github.event.
|
|
20
|
+
ref: ${{ github.event.ref }}
|
|
17
21
|
fetch-depth: 1000
|
|
18
22
|
|
|
19
|
-
- name: Fetch base
|
|
20
|
-
run: git fetch origin ${{ github.event.pull_request.base.ref }} --depth=1000
|
|
21
|
-
|
|
22
23
|
- uses: actions/setup-node@v3
|
|
23
24
|
with:
|
|
24
25
|
node-version: 16
|
|
25
26
|
|
|
26
27
|
- run: npm ci --ignore-scripts
|
|
27
28
|
|
|
28
|
-
- run: npm run lint
|
|
29
|
-
|
|
30
29
|
- name: Run mcdev-tests with coverage
|
|
31
30
|
run: npm run coverage
|
|
32
31
|
|
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
on: [pull_request]
|
|
2
2
|
|
|
3
|
-
name: Test coverage report
|
|
3
|
+
name: Test coverage report # main.yml
|
|
4
|
+
|
|
5
|
+
permissions:
|
|
6
|
+
# allow dependabot to execute this workflow
|
|
7
|
+
pull-requests: write
|
|
8
|
+
|
|
4
9
|
jobs:
|
|
5
10
|
hello_world_job:
|
|
6
11
|
runs-on: ubuntu-latest
|
|
@@ -18,8 +23,6 @@ jobs:
|
|
|
18
23
|
|
|
19
24
|
- run: npm ci --ignore-scripts
|
|
20
25
|
|
|
21
|
-
- run: npm run lint
|
|
22
|
-
|
|
23
26
|
- name: Run mcdev-tests with coverage
|
|
24
27
|
run: npm run coverage
|
|
25
28
|
|
|
@@ -69,7 +72,7 @@ jobs:
|
|
|
69
72
|
files: 'base-artifacts/coverage-summary.json'
|
|
70
73
|
|
|
71
74
|
- name: Report coverage
|
|
72
|
-
uses: sidx1024/report-nyc-coverage-github-action@v1.2.
|
|
75
|
+
uses: sidx1024/report-nyc-coverage-github-action@v1.2.7
|
|
73
76
|
id: report
|
|
74
77
|
with:
|
|
75
78
|
coverage_file: 'artifacts/test-coverage-output/coverage-summary.json'
|
package/.husky/post-checkout
CHANGED
|
@@ -10,7 +10,8 @@ then
|
|
|
10
10
|
fi
|
|
11
11
|
TEMPLATE="#$TICKETID: "
|
|
12
12
|
echo "[POST_CHECKOUT] Setting template commit to '$TEMPLATE'"
|
|
13
|
-
|
|
13
|
+
# wrap $TEMPLATE in quotes or else it is trimmed automatically
|
|
14
|
+
echo "$TEMPLATE" > ".git/templatemessage"
|
|
14
15
|
|
|
15
16
|
|
|
16
17
|
# ### run npm install ###
|
|
@@ -21,7 +22,7 @@ IFS=$'\n'
|
|
|
21
22
|
NEWHEAD=$1
|
|
22
23
|
# $2 is the previous HEAD pointer
|
|
23
24
|
OLDHEAD=$2
|
|
24
|
-
# extract all paths to package-lock.json files
|
|
25
|
+
# extract all paths to package-lock.json files
|
|
25
26
|
PACKAGE_LOCK_REGEX="(^package-lock\.json)"
|
|
26
27
|
PACKAGES=$(git diff --name-only $NEWHEAD $OLDHEAD | grep -E $PACKAGE_LOCK_REGEX || true)
|
|
27
28
|
|
|
@@ -31,6 +32,7 @@ if [[ ${PACKAGES[@]} ]]; then
|
|
|
31
32
|
done
|
|
32
33
|
echo "📦 Running npm install to update your dependencies..."
|
|
33
34
|
npm install
|
|
35
|
+
npm run lint:fix
|
|
34
36
|
else
|
|
35
37
|
echo "📦 All packages up-to-date. No need to run npm install."
|
|
36
38
|
fi
|
package/.husky/post-merge
CHANGED
package/.vscode/extensions.json
CHANGED