@getjones/test-infra 5.2.13 → 5.2.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (296) hide show
  1. package/eslint.config.mjs +156 -156
  2. package/package.json +43 -43
  3. package/src/common/commonFlows/auth/auth.js +95 -95
  4. package/src/common/commonFlows/index.js +5 -5
  5. package/src/common/commonFlows/records/records.js +452 -500
  6. package/src/common/commonFlows/users/users.js +15 -15
  7. package/src/common/consts/accountSettings.js +112 -112
  8. package/src/common/consts/activationStatuses.js +6 -6
  9. package/src/common/consts/analysisStatuses.js +7 -7
  10. package/src/common/consts/autocomplete.js +10 -10
  11. package/src/common/consts/constantsForRecordsSortingAndFilters.js +49 -49
  12. package/src/common/consts/dashboardCharts.js +18 -18
  13. package/src/common/consts/homepage/AttentionTab.js +6 -6
  14. package/src/common/consts/homepage/sortOptions.js +19 -19
  15. package/src/common/consts/projectSettings.js +28 -35
  16. package/src/common/consts/recordTypes.js +5 -5
  17. package/src/common/consts/requirementActions.js +10 -10
  18. package/src/common/consts/s3FileTypes.js +12 -12
  19. package/src/common/consts/userRoles.js +21 -21
  20. package/src/common/consts/userTypes.js +16 -16
  21. package/src/common/errorCodes.js +13 -13
  22. package/src/common/httpResponseStatusCodes.json +19 -19
  23. package/src/common/httpResponseTypes.json +2 -2
  24. package/src/common/requests/apiKeyAuth/requests.js +45 -45
  25. package/src/common/requests/cookieAuth/requests.js +40 -40
  26. package/src/common/requests/internalAuth/requests.js +48 -48
  27. package/src/common/requests/requestHandlers.js +112 -112
  28. package/src/common/utils/arrayUtils.js +19 -19
  29. package/src/common/utils/complianceUtil.js +114 -114
  30. package/src/common/utils/configsUtil.js +22 -22
  31. package/src/common/utils/dataTypeUtils.js +41 -41
  32. package/src/common/utils/numberUtils.js +22 -22
  33. package/src/common/utils/objectUtils.js +102 -102
  34. package/src/common/utils/timeUtils.js +202 -195
  35. package/src/common/validations/typeValidations.js +36 -36
  36. package/src/defaults/configs/attributes.js +170 -170
  37. package/src/defaults/configs/auditConfigs.js +129 -129
  38. package/src/defaults/configs/coverage.js +144 -144
  39. package/src/defaults/configs/polices.js +28 -28
  40. package/src/defaults/configs/requirement.js +218 -218
  41. package/src/defaults/index.js +7 -7
  42. package/src/env.js +58 -58
  43. package/src/factory/globalRecord/globalRecord.js +43 -43
  44. package/src/factory/index.js +8 -8
  45. package/src/factory/records/records.js +295 -295
  46. package/src/factory/users/users.js +70 -70
  47. package/src/index.js +118 -118
  48. package/src/reporters/mochaReporter.js +273 -273
  49. package/src/saas/internal-api/accountDirectory/api/accountDirectory.api.js +152 -152
  50. package/src/saas/internal-api/accountDirectory/api/accountDirectory.service.js +576 -576
  51. package/src/saas/internal-api/accountDirectory/consts/accountDirectory.consts.js +75 -75
  52. package/src/saas/internal-api/accountDirectory/index.js +5 -5
  53. package/src/saas/internal-api/accountDirectory/models/accountDirectory.models.js +172 -172
  54. package/src/saas/internal-api/accounts/api/core/accounts.core.api.js +54 -54
  55. package/src/saas/internal-api/accounts/api/core/accounts.core.service.js +114 -114
  56. package/src/saas/internal-api/accounts/api/emailCustomization/accounts.email.customizations.api.js +29 -29
  57. package/src/saas/internal-api/accounts/api/emailCustomization/accounts.email.customizations.service.js +60 -60
  58. package/src/saas/internal-api/accounts/api/emailCustomization/consts.js +8 -8
  59. package/src/saas/internal-api/accounts/api/openapi/accounts.openapi.api.js +54 -54
  60. package/src/saas/internal-api/accounts/api/openapi/accounts.openapi.service.js +67 -67
  61. package/src/saas/internal-api/accounts/api/settings/settings.api.js +21 -21
  62. package/src/saas/internal-api/accounts/api/settings/settings.service.js +58 -58
  63. package/src/saas/internal-api/accounts/consts/consts.js +8 -8
  64. package/src/saas/internal-api/accounts/index.js +22 -22
  65. package/src/saas/internal-api/accounts/models/core/create.account.model.js +16 -16
  66. package/src/saas/internal-api/accounts/models/settings/update.settings.model.js +110 -110
  67. package/src/saas/internal-api/accounts/utils/utils.js +60 -60
  68. package/src/saas/internal-api/agreement/api/agreement.api.js +39 -39
  69. package/src/saas/internal-api/agreement/api/agreement.service.js +121 -121
  70. package/src/saas/internal-api/agreement/consts/consts.js +11 -11
  71. package/src/saas/internal-api/agreement/index.js +12 -12
  72. package/src/saas/internal-api/agreement/models/create.agreement.model.js +12 -12
  73. package/src/saas/internal-api/agreement/models/createAgreementByAuditorModel.js +11 -11
  74. package/src/saas/internal-api/agreement/models/createAgreementByPMModel.js +13 -13
  75. package/src/saas/internal-api/auditCustomerRules/api/customer.rules.api.js +49 -49
  76. package/src/saas/internal-api/auditCustomerRules/api/customer.rules.service.js +121 -121
  77. package/src/saas/internal-api/auditCustomerRules/consts/customer.rule.js +40 -40
  78. package/src/saas/internal-api/auditCustomerRules/index.js +7 -7
  79. package/src/saas/internal-api/auditCustomerRules/models/customer.rule.model.js +55 -55
  80. package/src/saas/internal-api/auditCustomerRules/utils/customer.rule.util.js +70 -70
  81. package/src/saas/internal-api/auditNotes/api/audit.notes.api.js +40 -40
  82. package/src/saas/internal-api/auditNotes/api/audit.notes.service.js +116 -116
  83. package/src/saas/internal-api/auditNotes/index.js +4 -4
  84. package/src/saas/internal-api/auditNotes/models/audit.note.model.js +32 -32
  85. package/src/saas/internal-api/auditorComments/api/auditor.comments.api.js +20 -20
  86. package/src/saas/internal-api/auditorComments/api/auditor.comments.service.js +27 -27
  87. package/src/saas/internal-api/auditorComments/consts/auditor.comment.js +16 -16
  88. package/src/saas/internal-api/auditorComments/index.js +5 -5
  89. package/src/saas/internal-api/auditorComments/models/auditor.comment.model.js +40 -40
  90. package/src/saas/internal-api/auth/api/auth.api.js +78 -78
  91. package/src/saas/internal-api/auth/api/auth.service.js +217 -217
  92. package/src/saas/internal-api/auth/index.js +3 -3
  93. package/src/saas/internal-api/certificial/api/certificial.api.js +15 -15
  94. package/src/saas/internal-api/certificial/api/certificial.service.js +24 -24
  95. package/src/saas/internal-api/certificial/consts.js +8 -8
  96. package/src/saas/internal-api/certificial/index.js +4 -4
  97. package/src/saas/internal-api/coi/api/coi.api.js +76 -76
  98. package/src/saas/internal-api/coi/api/coi.service.js +104 -104
  99. package/src/saas/internal-api/coi/consts/coiUploaderTypes.js +9 -0
  100. package/src/saas/internal-api/coi/consts/duplicateHandling.js +7 -7
  101. package/src/saas/internal-api/coi/consts/hashes.js +5 -5
  102. package/src/saas/internal-api/coi/consts/uploaderTypes.js +3 -3
  103. package/src/saas/internal-api/coi/index.js +1 -0
  104. package/src/saas/internal-api/coi/models/Combine.last.two.cois.model.js +25 -25
  105. package/src/saas/internal-api/coi/models/submit.coi.batch.model.js +23 -23
  106. package/src/saas/internal-api/coi/models/submit.coi.model.js +23 -23
  107. package/src/saas/internal-api/coi/utils/utils.js +11 -10
  108. package/src/saas/internal-api/compliance/api/amBestRating/am.best.rating.api.js +12 -12
  109. package/src/saas/internal-api/compliance/api/amBestRating/am.best.rating.service.js +14 -14
  110. package/src/saas/internal-api/compliance/api/audit/aiAudit/aiAudit.api.js +63 -63
  111. package/src/saas/internal-api/compliance/api/audit/aiAudit/aiAudit.service.js +99 -99
  112. package/src/saas/internal-api/compliance/api/audit/audit.api.js +124 -124
  113. package/src/saas/internal-api/compliance/api/audit/audit.service.js +390 -390
  114. package/src/saas/internal-api/compliance/api/complianceSnapshot/compliance.snapshot.api.js +32 -32
  115. package/src/saas/internal-api/compliance/api/complianceSnapshot/compliance.snapshot.service.js +73 -73
  116. package/src/saas/internal-api/compliance/api/convert/convert.api.js +12 -12
  117. package/src/saas/internal-api/compliance/api/convert/convert.service.js +7 -7
  118. package/src/saas/internal-api/compliance/api/coverage/coverage.api.js +33 -33
  119. package/src/saas/internal-api/compliance/api/coverage/coverage.service.js +46 -46
  120. package/src/saas/internal-api/compliance/api/overrideGap/override.gap.api.js +86 -109
  121. package/src/saas/internal-api/compliance/api/overrideGap/override.gap.service.js +300 -391
  122. package/src/saas/internal-api/compliance/consts/audit.js +130 -130
  123. package/src/saas/internal-api/compliance/consts/overrideGapRequest/override.gap.request.js +7 -14
  124. package/src/saas/internal-api/compliance/index.js +41 -41
  125. package/src/saas/internal-api/compliance/models/audit/audit.model.js +109 -109
  126. package/src/saas/internal-api/compliance/models/overrideGapRequest/override.gap.request.model.js +16 -31
  127. package/src/saas/internal-api/compliance/models/waive/waive.model.js +112 -112
  128. package/src/saas/internal-api/compliance/utils/auditUtil.js +308 -308
  129. package/src/saas/internal-api/compliance/utils/coverageUtil.js +45 -45
  130. package/src/saas/internal-api/contractors/api/contractors.api.js +251 -251
  131. package/src/saas/internal-api/contractors/api/contractors.service.js +482 -482
  132. package/src/saas/internal-api/contractors/consts/consts.js +6 -6
  133. package/src/saas/internal-api/contractors/index.js +8 -8
  134. package/src/saas/internal-api/contractors/models/assign.requirement.model.js +11 -11
  135. package/src/saas/internal-api/contractors/models/edit.contractor.model.js +73 -73
  136. package/src/saas/internal-api/contractors/models/link.request.model.js +10 -10
  137. package/src/saas/internal-api/contractors/models/verification.contractor.model.js +29 -29
  138. package/src/saas/internal-api/contractors/utils.js +25 -25
  139. package/src/saas/internal-api/customTags/api/customTags.api.js +47 -47
  140. package/src/saas/internal-api/customTags/api/customTags.service.js +96 -96
  141. package/src/saas/internal-api/customTags/index.js +4 -4
  142. package/src/saas/internal-api/customTags/models/customTagsModels.js +17 -17
  143. package/src/saas/internal-api/dashboard/api/recordList.api.js +38 -38
  144. package/src/saas/internal-api/dashboard/api/recordList.service.js +60 -60
  145. package/src/saas/internal-api/dashboard/index.js +5 -5
  146. package/src/saas/internal-api/dashboard/models/dashboard.filter.criteria.model.js +38 -38
  147. package/src/saas/internal-api/dbEmails/api/db.emails.api.js +25 -25
  148. package/src/saas/internal-api/dbEmails/api/db.emails.service.js +209 -209
  149. package/src/saas/internal-api/dbEmails/consts/consts.js +66 -69
  150. package/src/saas/internal-api/dbEmails/index.js +6 -6
  151. package/src/saas/internal-api/dbEmails/models/db.emails.model.js +22 -22
  152. package/src/saas/internal-api/dbEmails/utils/util.js +82 -82
  153. package/src/saas/internal-api/emailCustomization/api/email.customization.api.js +26 -26
  154. package/src/saas/internal-api/emailCustomization/api/email.customization.service.js +50 -50
  155. package/src/saas/internal-api/emailCustomization/index.js +3 -3
  156. package/src/saas/internal-api/fileScan/api/file.scan.api.js +14 -14
  157. package/src/saas/internal-api/fileScan/api/file.scan.service.js +35 -35
  158. package/src/saas/internal-api/fileScan/index.js +3 -3
  159. package/src/saas/internal-api/fileScan/models/update.scan.status.model.js +13 -13
  160. package/src/saas/internal-api/globalRecord/api/global.record.api.js +95 -95
  161. package/src/saas/internal-api/globalRecord/api/global.record.service.js +112 -112
  162. package/src/saas/internal-api/globalRecord/consts.js +20 -20
  163. package/src/saas/internal-api/globalRecord/index.js +6 -6
  164. package/src/saas/internal-api/globalRecord/models/global.record.model.js +60 -60
  165. package/src/saas/internal-api/globalRecord/utils/util.js +161 -161
  166. package/src/saas/internal-api/homepageCharts/api/charts.api.js +12 -12
  167. package/src/saas/internal-api/homepageCharts/api/charts.service.js +7 -7
  168. package/src/saas/internal-api/homepageCharts/index.js +3 -3
  169. package/src/saas/internal-api/notificationCenter/api/notification.center.api.js +32 -32
  170. package/src/saas/internal-api/notificationCenter/api/notification.center.service.js +49 -49
  171. package/src/saas/internal-api/notificationCenter/consts.js +9 -12
  172. package/src/saas/internal-api/notificationCenter/index.js +4 -4
  173. package/src/saas/internal-api/outlook/api/outlook.api.js +14 -14
  174. package/src/saas/internal-api/outlook/api/outlook.service.js +14 -14
  175. package/src/saas/internal-api/outlook/index.js +3 -3
  176. package/src/saas/internal-api/policyFile/api/policy.file.api.js +43 -43
  177. package/src/saas/internal-api/policyFile/api/policy.file.service.js +117 -117
  178. package/src/saas/internal-api/policyFile/consts.js +21 -21
  179. package/src/saas/internal-api/policyFile/index.js +11 -11
  180. package/src/saas/internal-api/policyFile/models/create.policy.file.model.js +11 -11
  181. package/src/saas/internal-api/policyFile/models/set.publish.flag.to.policy.model.js +13 -13
  182. package/src/saas/internal-api/projects/api/core/projects.api.js +39 -39
  183. package/src/saas/internal-api/projects/api/core/projects.service.js +77 -77
  184. package/src/saas/internal-api/projects/api/settings/project.settings.api.js +18 -18
  185. package/src/saas/internal-api/projects/api/settings/project.settings.service.js +35 -35
  186. package/src/saas/internal-api/projects/consts/defaultProject.js +3 -3
  187. package/src/saas/internal-api/projects/index.js +24 -24
  188. package/src/saas/internal-api/projects/models/core/create.project.model.js +41 -41
  189. package/src/saas/internal-api/projects/models/core/update.project.model.js +47 -47
  190. package/src/saas/internal-api/projects/models/settings/update.project.settings.model.js +56 -64
  191. package/src/saas/internal-api/projects/utils/utils.js +159 -159
  192. package/src/saas/internal-api/recordHub/api/record.hub.api.js +20 -20
  193. package/src/saas/internal-api/recordHub/api/record.hub.service.js +86 -86
  194. package/src/saas/internal-api/recordHub/index.js +3 -3
  195. package/src/saas/internal-api/recordNotes/api/record.notes.api.js +38 -38
  196. package/src/saas/internal-api/recordNotes/api/record.notes.service.js +56 -56
  197. package/src/saas/internal-api/recordNotes/api/record.notes.utils.js +12 -12
  198. package/src/saas/internal-api/recordNotes/index.js +3 -3
  199. package/src/saas/internal-api/relatedDocs/api/related.docs.api.js +98 -98
  200. package/src/saas/internal-api/relatedDocs/api/related.docs.service.js +180 -180
  201. package/src/saas/internal-api/relatedDocs/index.js +4 -4
  202. package/src/saas/internal-api/relatedDocs/models/related.doc.model.js +36 -36
  203. package/src/saas/internal-api/reports/api/reports.api.js +56 -56
  204. package/src/saas/internal-api/reports/api/reports.service.js +68 -68
  205. package/src/saas/internal-api/reports/consts/consts.js +71 -71
  206. package/src/saas/internal-api/reports/index.js +15 -15
  207. package/src/saas/internal-api/reports/models/report.model.js +27 -27
  208. package/src/saas/internal-api/requests/api/requests.api.js +132 -132
  209. package/src/saas/internal-api/requests/api/requests.service.js +315 -315
  210. package/src/saas/internal-api/requests/index.js +21 -21
  211. package/src/saas/internal-api/requests/models/create.request.model.js +39 -39
  212. package/src/saas/internal-api/requests/models/draft.request.criteria.model.js +18 -18
  213. package/src/saas/internal-api/requests/models/draft.request.report.model.js +14 -14
  214. package/src/saas/internal-api/requests/models/edit.request.model.js +31 -31
  215. package/src/saas/internal-api/requests/models/homepageRequestCriteriaModel.js +19 -19
  216. package/src/saas/internal-api/requests/models/requestListCriteriaModel.js +17 -17
  217. package/src/saas/internal-api/requests/models/tenant.request.model.js +9 -9
  218. package/src/saas/internal-api/requests/utils.js +16 -16
  219. package/src/saas/internal-api/requestsTable/api/requests.table.api.js +20 -20
  220. package/src/saas/internal-api/requestsTable/api/requests.table.service.js +14 -14
  221. package/src/saas/internal-api/requestsTable/index.js +3 -3
  222. package/src/saas/internal-api/requirements/api/lease/lease.api.js +74 -74
  223. package/src/saas/internal-api/requirements/api/lease/lease.service.js +167 -167
  224. package/src/saas/internal-api/requirements/api/requirements.api.js +65 -65
  225. package/src/saas/internal-api/requirements/api/requirements.service.js +198 -198
  226. package/src/saas/internal-api/requirements/consts/attributeTypes.json +8 -8
  227. package/src/saas/internal-api/requirements/consts/consts.js +22 -22
  228. package/src/saas/internal-api/requirements/index.js +22 -22
  229. package/src/saas/internal-api/requirements/models/create.requirement.model.js +17 -17
  230. package/src/saas/internal-api/requirements/models/extraction.request.model.js +16 -16
  231. package/src/saas/internal-api/requirements/models/policy.model.js +35 -35
  232. package/src/saas/internal-api/requirements/models/tab.extraction.request.model.js +14 -14
  233. package/src/saas/internal-api/requirements/models/update.requirement.model.js +19 -19
  234. package/src/saas/internal-api/requirements/utils/utils.js +129 -129
  235. package/src/saas/internal-api/sampleCoi/api/sample.coi.api.js +15 -15
  236. package/src/saas/internal-api/sampleCoi/api/sample.coi.service.js +48 -48
  237. package/src/saas/internal-api/sampleCoi/consts/consts.js +22 -22
  238. package/src/saas/internal-api/sampleCoi/index.js +4 -4
  239. package/src/saas/internal-api/schedulerJobRun/api/scheduler.job.run.api.js +31 -31
  240. package/src/saas/internal-api/schedulerJobRun/api/scheduler.job.run.service.js +56 -56
  241. package/src/saas/internal-api/schedulerJobRun/index.js +3 -3
  242. package/src/saas/internal-api/serviceArea/api/coordinates.api.js +12 -12
  243. package/src/saas/internal-api/serviceArea/api/coordinates.service.js +7 -7
  244. package/src/saas/internal-api/serviceArea/index.js +4 -4
  245. package/src/saas/internal-api/serviceArea/utils/utils.js +8 -8
  246. package/src/saas/internal-api/tableOfContents/api/table.of.contents.api.js +37 -37
  247. package/src/saas/internal-api/tableOfContents/api/table.of.contents.service.js +19 -19
  248. package/src/saas/internal-api/tableOfContents/index.js +3 -3
  249. package/src/saas/internal-api/tabs/api/tabs.api.js +32 -32
  250. package/src/saas/internal-api/tabs/api/tabs.service.js +60 -60
  251. package/src/saas/internal-api/tabs/index.js +3 -3
  252. package/src/saas/internal-api/tabs/models/tabs.model.js +19 -19
  253. package/src/saas/internal-api/thread-scheduler/runner.js +86 -86
  254. package/src/saas/internal-api/thread-scheduler/schedulerJobs.js +10 -10
  255. package/src/saas/internal-api/uploadFiles/api/upload.file.api.js +49 -49
  256. package/src/saas/internal-api/uploadFiles/api/upload.file.service.js +176 -176
  257. package/src/saas/internal-api/uploadFiles/consts.js +36 -36
  258. package/src/saas/internal-api/uploadFiles/index.js +5 -5
  259. package/src/saas/internal-api/uploadFiles/utils.js +34 -34
  260. package/src/saas/internal-api/users/api/tenantApp/tenant.app.api.js +38 -38
  261. package/src/saas/internal-api/users/api/tenantApp/tenant.app.service.js +109 -109
  262. package/src/saas/internal-api/users/api/users.api.js +158 -158
  263. package/src/saas/internal-api/users/api/users.service.js +363 -363
  264. package/src/saas/internal-api/users/index.js +17 -17
  265. package/src/saas/internal-api/users/models/create.inner.system.user.model.js +18 -18
  266. package/src/saas/internal-api/users/models/notification.settings.model.js +15 -15
  267. package/src/saas/internal-api/users/models/tenant.user.model.js +11 -11
  268. package/src/saas/internal-api/users/models/users.model.js +43 -43
  269. package/src/saas/internal-api/users/utils/util.js +50 -50
  270. package/src/saas/internal-api/vendorProfile/api/vendor.profile.api.js +26 -26
  271. package/src/saas/internal-api/vendorProfile/api/vendor.profile.service.js +19 -19
  272. package/src/saas/internal-api/vendorProfile/index.js +3 -3
  273. package/src/saas/openapi/accounts/accounts.api.js +17 -17
  274. package/src/saas/openapi/accounts/accounts.service.js +11 -11
  275. package/src/saas/openapi/coi/coi.api.js +35 -35
  276. package/src/saas/openapi/coi/coi.service.js +53 -53
  277. package/src/saas/openapi/projects/projects.api.js +83 -83
  278. package/src/saas/openapi/projects/projects.service.js +89 -71
  279. package/src/saas/openapi/relatedDocs/related.docs.api.js +30 -30
  280. package/src/saas/openapi/relatedDocs/related.docs.service.js +56 -55
  281. package/src/saas/openapi/requests/index.js +7 -7
  282. package/src/saas/openapi/requests/models/invite.request.model.js +42 -42
  283. package/src/saas/openapi/requests/models/update.request.model.js +37 -37
  284. package/src/saas/openapi/requests/requests.api.js +93 -93
  285. package/src/saas/openapi/requests/requests.service.js +100 -94
  286. package/src/saas/openapi/requirements/index.js +6 -6
  287. package/src/saas/openapi/requirements/models/copy.requirement.model.js +10 -10
  288. package/src/saas/openapi/requirements/requirements.api.js +41 -41
  289. package/src/saas/openapi/requirements/requirements.service.js +61 -55
  290. package/src/saas/openapi/tabs/index.js +6 -6
  291. package/src/saas/openapi/tabs/models/create.tab.model.js +6 -6
  292. package/src/saas/openapi/tabs/tabs.api.js +27 -27
  293. package/src/saas/openapi/tabs/tabs.service.js +26 -19
  294. package/src/saas/openapi/users/user.model.js +10 -10
  295. package/src/saas/openapi/users/users.api.js +33 -33
  296. package/src/saas/openapi/users/users.service.js +51 -51
@@ -1,114 +1,114 @@
1
- const { expect } = require('chai');
2
- const env = require('../../../../../env');
3
- const accountsAPI = require('./accounts.core.api');
4
- const CreateAccountModel = require('../../models/core/create.account.model');
5
- const { validateType } = require('../../../../../common/validations/typeValidations');
6
- const httpResponseStatusCodes = require('../../../../../common/httpResponseStatusCodes.json');
7
-
8
- const { accountCreationSecret } = env.getEnv();
9
-
10
- const createAccount = async (createAccountModel, context) => {
11
- validateType(createAccountModel, CreateAccountModel);
12
-
13
- env.requiredValidation({
14
- accountCreationSecret: accountCreationSecret,
15
- 'credentials.strongPassword': createAccountModel.password
16
- });
17
-
18
- return accountsAPI.create(createAccountModel, context);
19
- };
20
-
21
- const getAccountsResponse = (accountName, context, headers = {}) => {
22
- return accountsAPI.getByName(accountName, context, headers);
23
- };
24
-
25
- const getAccount = async (accountName, context) => {
26
- const response = await accountsAPI.getByName(accountName, context);
27
- expect(response.status, 'Failed to get accounts by name').to.equal(httpResponseStatusCodes.OK);
28
-
29
- const existingAccounts = response.data;
30
-
31
- if (!existingAccounts || !existingAccounts.length) {
32
- return null;
33
- }
34
-
35
- if (existingAccounts.length > 1) {
36
- throw new Error(`Got more than one account with the name: ${accountName}. IDs: ${existingAccounts.map(item => item.userId).join(', ')}`);
37
- }
38
-
39
- return existingAccounts[0];
40
- };
41
-
42
- const getAccountList = context => {
43
- return accountsAPI.getAccountList(context);
44
- };
45
-
46
- const getOrCreateAccount = async (createAccountModel, context) => {
47
- validateType(createAccountModel, CreateAccountModel);
48
- const existingAccount = await getAccount(createAccountModel.companyName, context);
49
-
50
- if (existingAccount) {
51
- return existingAccount;
52
- }
53
-
54
- const response = await accountsAPI.create(createAccountModel, context);
55
-
56
- if (!response.data) {
57
- throw new Error(`Account by the name ${createAccountModel.companyName} was not created\n${response}`);
58
- }
59
-
60
- return response.data;
61
- };
62
-
63
- const getAccountId = async (accountName, context) => {
64
- const account = await getAccount(accountName, context);
65
-
66
- if (!account) {
67
- console.error(`Account ${accountName} does not exist`);
68
- return null;
69
- }
70
-
71
- return account.userId;
72
- };
73
-
74
- const deleteAccountByName = async (accountName, context) => {
75
- const accountId = await getAccountId(accountName, context);
76
- return accountsAPI.deleteAccount(accountId, context);
77
- };
78
-
79
- const deleteAccountById = async (accountId, context) => {
80
- return accountsAPI.deleteAccount(accountId, context);
81
- };
82
-
83
- const getFromCertificateHolder = async certificateHolder => {
84
- const response = await accountsAPI.getFromCertificateHolder(certificateHolder);
85
-
86
- if (response.status !== httpResponseStatusCodes.OK) {
87
- throw Error(`Failed to get account by certificate holder: ${certificateHolder} - Response: ${response.status}`);
88
- }
89
-
90
- return response.data;
91
- };
92
-
93
- const getSupportAutomationAllowed = async (accountIds, { expectError } = {}) => {
94
- const response = await accountsAPI.getSupportAutomationAllowed(accountIds);
95
-
96
- if (response.status !== httpResponseStatusCodes.OK && !expectError) {
97
- throw new Error(`Failed to check support automation allowed accounts. Status: ${response.status}`);
98
- }
99
-
100
- return response;
101
- };
102
-
103
- module.exports = {
104
- getAccount,
105
- getAccountsResponse,
106
- getAccountList,
107
- getOrCreateAccount,
108
- getAccountId,
109
- createAccount,
110
- deleteAccountByName,
111
- deleteAccountById,
112
- getFromCertificateHolder,
113
- getSupportAutomationAllowed
114
- };
1
+ const { expect } = require('chai');
2
+ const env = require('../../../../../env');
3
+ const accountsAPI = require('./accounts.core.api');
4
+ const CreateAccountModel = require('../../models/core/create.account.model');
5
+ const { validateType } = require('../../../../../common/validations/typeValidations');
6
+ const httpResponseStatusCodes = require('../../../../../common/httpResponseStatusCodes.json');
7
+
8
+ const { accountCreationSecret } = env.getEnv();
9
+
10
+ const createAccount = async (createAccountModel, context) => {
11
+ validateType(createAccountModel, CreateAccountModel);
12
+
13
+ env.requiredValidation({
14
+ accountCreationSecret: accountCreationSecret,
15
+ 'credentials.strongPassword': createAccountModel.password
16
+ });
17
+
18
+ return accountsAPI.create(createAccountModel, context);
19
+ };
20
+
21
+ const getAccountsResponse = (accountName, context, headers = {}) => {
22
+ return accountsAPI.getByName(accountName, context, headers);
23
+ };
24
+
25
+ const getAccount = async (accountName, context) => {
26
+ const response = await accountsAPI.getByName(accountName, context);
27
+ expect(response.status, 'Failed to get accounts by name').to.equal(httpResponseStatusCodes.OK);
28
+
29
+ const existingAccounts = response.data;
30
+
31
+ if (!existingAccounts || !existingAccounts.length) {
32
+ return null;
33
+ }
34
+
35
+ if (existingAccounts.length > 1) {
36
+ throw new Error(`Got more than one account with the name: ${accountName}. IDs: ${existingAccounts.map(item => item.userId).join(', ')}`);
37
+ }
38
+
39
+ return existingAccounts[0];
40
+ };
41
+
42
+ const getAccountList = context => {
43
+ return accountsAPI.getAccountList(context);
44
+ };
45
+
46
+ const getOrCreateAccount = async (createAccountModel, context) => {
47
+ validateType(createAccountModel, CreateAccountModel);
48
+ const existingAccount = await getAccount(createAccountModel.companyName, context);
49
+
50
+ if (existingAccount) {
51
+ return existingAccount;
52
+ }
53
+
54
+ const response = await accountsAPI.create(createAccountModel, context);
55
+
56
+ if (!response.data) {
57
+ throw new Error(`Account by the name ${createAccountModel.companyName} was not created\n${response}`);
58
+ }
59
+
60
+ return response.data;
61
+ };
62
+
63
+ const getAccountId = async (accountName, context) => {
64
+ const account = await getAccount(accountName, context);
65
+
66
+ if (!account) {
67
+ console.error(`Account ${accountName} does not exist`);
68
+ return null;
69
+ }
70
+
71
+ return account.userId;
72
+ };
73
+
74
+ const deleteAccountByName = async (accountName, context) => {
75
+ const accountId = await getAccountId(accountName, context);
76
+ return accountsAPI.deleteAccount(accountId, context);
77
+ };
78
+
79
+ const deleteAccountById = async (accountId, context) => {
80
+ return accountsAPI.deleteAccount(accountId, context);
81
+ };
82
+
83
+ const getFromCertificateHolder = async certificateHolder => {
84
+ const response = await accountsAPI.getFromCertificateHolder(certificateHolder);
85
+
86
+ if (response.status !== httpResponseStatusCodes.OK) {
87
+ throw Error(`Failed to get account by certificate holder: ${certificateHolder} - Response: ${response.status}`);
88
+ }
89
+
90
+ return response.data;
91
+ };
92
+
93
+ const getSupportAutomationAllowed = async (accountIds, { expectError } = {}) => {
94
+ const response = await accountsAPI.getSupportAutomationAllowed(accountIds);
95
+
96
+ if (response.status !== httpResponseStatusCodes.OK && !expectError) {
97
+ throw new Error(`Failed to check support automation allowed accounts. Status: ${response.status}`);
98
+ }
99
+
100
+ return response;
101
+ };
102
+
103
+ module.exports = {
104
+ getAccount,
105
+ getAccountsResponse,
106
+ getAccountList,
107
+ getOrCreateAccount,
108
+ getAccountId,
109
+ createAccount,
110
+ deleteAccountByName,
111
+ deleteAccountById,
112
+ getFromCertificateHolder,
113
+ getSupportAutomationAllowed
114
+ };
@@ -1,29 +1,29 @@
1
- const requests = require('../../../../../common/requests/cookieAuth/requests');
2
- const internalRequests = require('../../../../../common/requests/internalAuth/requests');
3
-
4
- const { backendUrl } = require('../../../../../env').getEnv();
5
-
6
- const Endpoints = {
7
- getCobranding: accountId => `${backendUrl}/saas/cobranding/fetch?accountId=${accountId}`,
8
- deleteCobranding: accountId => `${backendUrl}/saas/cobranding/archive?accountId=${accountId}`,
9
- publishCobranding: `${backendUrl}/saas/cobranding/publish`,
10
- getAccountsByCobrandingEmail: email => `${backendUrl}/jcsc/account/from-email/${email}`
11
- };
12
-
13
- const getCobranding = (accountId, context) => {
14
- return requests.getRequestHandler(Endpoints.getCobranding(accountId), {}, context);
15
- };
16
-
17
- const deleteCobranding = (accountId, context) => {
18
- return requests.deleteRequestHandler(Endpoints.deleteCobranding(accountId), context);
19
- };
20
-
21
- const publishCobranding = (formData, context) => {
22
- return requests.postRequestHandler(Endpoints.publishCobranding, formData, context, formData.getHeaders());
23
- };
24
-
25
- const getAccountsByCobrandingEmail = email => {
26
- return internalRequests.getRequestHandler(Endpoints.getAccountsByCobrandingEmail(email), {});
27
- };
28
-
29
- module.exports = { getCobranding, deleteCobranding, publishCobranding, getAccountsByCobrandingEmail };
1
+ const requests = require('../../../../../common/requests/cookieAuth/requests');
2
+ const internalRequests = require('../../../../../common/requests/internalAuth/requests');
3
+
4
+ const { backendUrl } = require('../../../../../env').getEnv();
5
+
6
+ const Endpoints = {
7
+ getCobranding: accountId => `${backendUrl}/saas/cobranding/fetch?accountId=${accountId}`,
8
+ deleteCobranding: accountId => `${backendUrl}/saas/cobranding/archive?accountId=${accountId}`,
9
+ publishCobranding: `${backendUrl}/saas/cobranding/publish`,
10
+ getAccountsByCobrandingEmail: email => `${backendUrl}/jcsc/account/from-email/${email}`
11
+ };
12
+
13
+ const getCobranding = (accountId, context) => {
14
+ return requests.getRequestHandler(Endpoints.getCobranding(accountId), {}, context);
15
+ };
16
+
17
+ const deleteCobranding = (accountId, context) => {
18
+ return requests.deleteRequestHandler(Endpoints.deleteCobranding(accountId), context);
19
+ };
20
+
21
+ const publishCobranding = (formData, context) => {
22
+ return requests.postRequestHandler(Endpoints.publishCobranding, formData, context, formData.getHeaders());
23
+ };
24
+
25
+ const getAccountsByCobrandingEmail = email => {
26
+ return internalRequests.getRequestHandler(Endpoints.getAccountsByCobrandingEmail(email), {});
27
+ };
28
+
29
+ module.exports = { getCobranding, deleteCobranding, publishCobranding, getAccountsByCobrandingEmail };
@@ -1,60 +1,60 @@
1
- const FormData = require('form-data');
2
-
3
- const emailCustomizationsAPI = require('./accounts.email.customizations.api');
4
- const httpResponseStatusCodes = require('../../../../../common/httpResponseStatusCodes.json');
5
- const { uploadCobrandingLogo } = require('../../../uploadFiles/api/upload.file.service');
6
- const { logoType } = require('./consts');
7
-
8
- const getCobranding = async (accountId, context) => {
9
- const response = await emailCustomizationsAPI.getCobranding(accountId, context);
10
-
11
- if (response.status !== httpResponseStatusCodes.OK) {
12
- throw Error(`Failed to get cobranding by account id: ${accountId} - Response: ${response.status}`);
13
- }
14
-
15
- return response.data;
16
- };
17
-
18
- const deleteCobranding = async (accountId, context) => {
19
- const response = await emailCustomizationsAPI.deleteCobranding(accountId, context);
20
-
21
- if (response.status !== httpResponseStatusCodes.OK) {
22
- throw Error(`Failed to delete cobranding by account id: ${accountId} - Response: ${response.status}`);
23
- }
24
-
25
- return response.data;
26
- };
27
-
28
- const publishCobranding = async (publishCobrandingModel, emailLogoPath, context) => {
29
- const publishCobrandingStr = JSON.stringify(publishCobrandingModel);
30
-
31
- const fileName = await uploadCobrandingLogo(logoType.EMAIL_LOGO, emailLogoPath, context);
32
- const formData = new FormData();
33
- formData.append('file', fileName);
34
- formData.append('coBrandingData', publishCobrandingStr);
35
-
36
- const response = await emailCustomizationsAPI.publishCobranding(formData, context);
37
-
38
- if (response.status !== httpResponseStatusCodes.OK) {
39
- throw Error(`Failed to publish cobranding with from email: ${publishCobrandingModel.fromEmailAddress} - Response: ${response.status}`);
40
- }
41
-
42
- return response.data;
43
- };
44
-
45
- const getAccountsByCobrandingEmail = async email => {
46
- const response = await emailCustomizationsAPI.getAccountsByCobrandingEmail(email);
47
-
48
- if (response.status !== httpResponseStatusCodes.OK) {
49
- throw Error(`Failed to get account ids by email: ${email} - Response: ${response.status}`);
50
- }
51
-
52
- return response.data;
53
- };
54
-
55
- module.exports = {
56
- getCobranding,
57
- deleteCobranding,
58
- publishCobranding,
59
- getAccountsByCobrandingEmail
60
- };
1
+ const FormData = require('form-data');
2
+
3
+ const emailCustomizationsAPI = require('./accounts.email.customizations.api');
4
+ const httpResponseStatusCodes = require('../../../../../common/httpResponseStatusCodes.json');
5
+ const { uploadCobrandingLogo } = require('../../../uploadFiles/api/upload.file.service');
6
+ const { logoType } = require('./consts');
7
+
8
+ const getCobranding = async (accountId, context) => {
9
+ const response = await emailCustomizationsAPI.getCobranding(accountId, context);
10
+
11
+ if (response.status !== httpResponseStatusCodes.OK) {
12
+ throw Error(`Failed to get cobranding by account id: ${accountId} - Response: ${response.status}`);
13
+ }
14
+
15
+ return response.data;
16
+ };
17
+
18
+ const deleteCobranding = async (accountId, context) => {
19
+ const response = await emailCustomizationsAPI.deleteCobranding(accountId, context);
20
+
21
+ if (response.status !== httpResponseStatusCodes.OK) {
22
+ throw Error(`Failed to delete cobranding by account id: ${accountId} - Response: ${response.status}`);
23
+ }
24
+
25
+ return response.data;
26
+ };
27
+
28
+ const publishCobranding = async (publishCobrandingModel, emailLogoPath, context) => {
29
+ const publishCobrandingStr = JSON.stringify(publishCobrandingModel);
30
+
31
+ const fileName = await uploadCobrandingLogo(logoType.EMAIL_LOGO, emailLogoPath, context);
32
+ const formData = new FormData();
33
+ formData.append('file', fileName);
34
+ formData.append('coBrandingData', publishCobrandingStr);
35
+
36
+ const response = await emailCustomizationsAPI.publishCobranding(formData, context);
37
+
38
+ if (response.status !== httpResponseStatusCodes.OK) {
39
+ throw Error(`Failed to publish cobranding with from email: ${publishCobrandingModel.fromEmailAddress} - Response: ${response.status}`);
40
+ }
41
+
42
+ return response.data;
43
+ };
44
+
45
+ const getAccountsByCobrandingEmail = async email => {
46
+ const response = await emailCustomizationsAPI.getAccountsByCobrandingEmail(email);
47
+
48
+ if (response.status !== httpResponseStatusCodes.OK) {
49
+ throw Error(`Failed to get account ids by email: ${email} - Response: ${response.status}`);
50
+ }
51
+
52
+ return response.data;
53
+ };
54
+
55
+ module.exports = {
56
+ getCobranding,
57
+ deleteCobranding,
58
+ publishCobranding,
59
+ getAccountsByCobrandingEmail
60
+ };
@@ -1,8 +1,8 @@
1
- const logoType = {
2
- EMAIL_LOGO: 'emailLogo',
3
- VENDOR_APP_LOGO: 'vendorAppLogo'
4
- };
5
-
6
- module.exports = {
7
- logoType
8
- };
1
+ const logoType = {
2
+ EMAIL_LOGO: 'emailLogo',
3
+ VENDOR_APP_LOGO: 'vendorAppLogo'
4
+ };
5
+
6
+ module.exports = {
7
+ logoType
8
+ };
@@ -1,54 +1,54 @@
1
- const requests = require('../../../../../common/requests/cookieAuth/requests');
2
- const { backendUrl } = require('../../../../../env').getEnv();
3
-
4
- const Endpoints = {
5
- createApiKey: `${backendUrl}/saas/integration-tests/api-keys`,
6
- getStaticApiKeyByAccountId: accountId => `${backendUrl}/saas/integration-tests/accounts/${accountId}/static-api-keys`,
7
- getOrCreateStaticApiKeyByAccountId: accountId => `${backendUrl}/saas/integration-tests/accounts/${accountId}/static-api-keys`,
8
- getApiKeyByKeyValue: `${backendUrl}/saas/integration-tests/api-keys`,
9
- removeStaticApiKey: accountId => `${backendUrl}/saas/integration-tests/accounts/${accountId}/static-api-keys`,
10
- dynamicApiKey: accountId => `${backendUrl}/saas/integration-tests/accounts/${accountId}/dynamic-api-key`
11
- };
12
-
13
- const createStaticApiKey = (data, context) => {
14
- return requests.postRequestHandler(Endpoints.createApiKey, data, context);
15
- };
16
-
17
- const createGeneratorApiKey = (data, context) => {
18
- return requests.postRequestHandler(Endpoints.createApiKey, data, context);
19
- };
20
-
21
- const getStaticApiKeyByAccountId = (accountId, context) => {
22
- return requests.getRequestHandler(Endpoints.getStaticApiKeyByAccountId(accountId), {}, context);
23
- };
24
-
25
- const getOrCreateStaticApiKeyByAccountId = (accountId, apiKeyValue, context) => {
26
- return requests.postRequestHandler(Endpoints.getOrCreateStaticApiKeyByAccountId(accountId), { apiKeyValue }, context);
27
- };
28
-
29
- const getApiKeyDetails = (apiKeyValue, context) => {
30
- return requests.getRequestHandler(Endpoints.getApiKeyByKeyValue, { apiKeyValue }, context);
31
- };
32
-
33
- const deleteStaticApiKey = (accountId, context) => {
34
- return requests.deleteRequestHandler(Endpoints.removeStaticApiKey(accountId), context);
35
- };
36
-
37
- const deleteDynamicApiKey = (accountId, context) => {
38
- return requests.deleteRequestHandler(Endpoints.dynamicApiKey(accountId), context);
39
- };
40
-
41
- const makeDynamicApiKeyExpired = (accountId, context) => {
42
- return requests.patchRequestHandler(Endpoints.dynamicApiKey(accountId), context, {});
43
- };
44
-
45
- module.exports = {
46
- createStaticApiKey,
47
- createGeneratorApiKey,
48
- getStaticApiKeyByAccountId,
49
- getOrCreateStaticApiKeyByAccountId,
50
- getApiKeyDetails,
51
- makeDynamicApiKeyExpired,
52
- deleteStaticApiKey,
53
- deleteDynamicApiKey
54
- };
1
+ const requests = require('../../../../../common/requests/cookieAuth/requests');
2
+ const { backendUrl } = require('../../../../../env').getEnv();
3
+
4
+ const Endpoints = {
5
+ createApiKey: `${backendUrl}/saas/integration-tests/api-keys`,
6
+ getStaticApiKeyByAccountId: accountId => `${backendUrl}/saas/integration-tests/accounts/${accountId}/static-api-keys`,
7
+ getOrCreateStaticApiKeyByAccountId: accountId => `${backendUrl}/saas/integration-tests/accounts/${accountId}/static-api-keys`,
8
+ getApiKeyByKeyValue: `${backendUrl}/saas/integration-tests/api-keys`,
9
+ removeStaticApiKey: accountId => `${backendUrl}/saas/integration-tests/accounts/${accountId}/static-api-keys`,
10
+ dynamicApiKey: accountId => `${backendUrl}/saas/integration-tests/accounts/${accountId}/dynamic-api-key`
11
+ };
12
+
13
+ const createStaticApiKey = (data, context) => {
14
+ return requests.postRequestHandler(Endpoints.createApiKey, data, context);
15
+ };
16
+
17
+ const createGeneratorApiKey = (data, context) => {
18
+ return requests.postRequestHandler(Endpoints.createApiKey, data, context);
19
+ };
20
+
21
+ const getStaticApiKeyByAccountId = (accountId, context) => {
22
+ return requests.getRequestHandler(Endpoints.getStaticApiKeyByAccountId(accountId), {}, context);
23
+ };
24
+
25
+ const getOrCreateStaticApiKeyByAccountId = (accountId, apiKeyValue, context) => {
26
+ return requests.postRequestHandler(Endpoints.getOrCreateStaticApiKeyByAccountId(accountId), { apiKeyValue }, context);
27
+ };
28
+
29
+ const getApiKeyDetails = (apiKeyValue, context) => {
30
+ return requests.getRequestHandler(Endpoints.getApiKeyByKeyValue, { apiKeyValue }, context);
31
+ };
32
+
33
+ const deleteStaticApiKey = (accountId, context) => {
34
+ return requests.deleteRequestHandler(Endpoints.removeStaticApiKey(accountId), context);
35
+ };
36
+
37
+ const deleteDynamicApiKey = (accountId, context) => {
38
+ return requests.deleteRequestHandler(Endpoints.dynamicApiKey(accountId), context);
39
+ };
40
+
41
+ const makeDynamicApiKeyExpired = (accountId, context) => {
42
+ return requests.patchRequestHandler(Endpoints.dynamicApiKey(accountId), context, {});
43
+ };
44
+
45
+ module.exports = {
46
+ createStaticApiKey,
47
+ createGeneratorApiKey,
48
+ getStaticApiKeyByAccountId,
49
+ getOrCreateStaticApiKeyByAccountId,
50
+ getApiKeyDetails,
51
+ makeDynamicApiKeyExpired,
52
+ deleteStaticApiKey,
53
+ deleteDynamicApiKey
54
+ };