@getjones/test-infra 4.4.6 → 4.4.8

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 (227) hide show
  1. package/package.json +30 -30
  2. package/src/common/commonFlows/auth/auth.js +40 -40
  3. package/src/common/commonFlows/index.js +4 -4
  4. package/src/common/commonFlows/records/records.js +195 -195
  5. package/src/common/consts/accountSettings.js +14 -14
  6. package/src/common/consts/activationStatuses.js +6 -6
  7. package/src/common/consts/autocomplete.js +9 -9
  8. package/src/common/consts/constantsForRecordsSortingAndFilters.js +40 -40
  9. package/src/common/consts/dashboardCharts.js +18 -18
  10. package/src/common/consts/ocrStatuses.js +6 -6
  11. package/src/common/consts/projectSettings.js +21 -21
  12. package/src/common/consts/recordTypes.js +5 -5
  13. package/src/common/consts/s3FileTypes.js +13 -13
  14. package/src/common/consts/userTypes.js +8 -8
  15. package/src/common/errorCodes.js +3 -3
  16. package/src/common/httpResponseStatusCodes.json +11 -11
  17. package/src/common/httpResponseTypes.json +2 -2
  18. package/src/common/requests/apiKeyAuth/requests.js +44 -44
  19. package/src/common/requests/cookieAuth/requests.js +40 -40
  20. package/src/common/requests/internalAuth/requests.js +48 -48
  21. package/src/common/requests/requestHandlers.js +80 -80
  22. package/src/common/utils/complianceUtil.js +114 -114
  23. package/src/common/utils/configsUtil.js +22 -22
  24. package/src/common/utils/dataTypeUtils.js +41 -41
  25. package/src/common/utils/numberUtils.js +22 -22
  26. package/src/common/utils/objectUtils.js +7 -7
  27. package/src/common/utils/timeUtils.js +177 -177
  28. package/src/common/validations/errorValidation.js +16 -16
  29. package/src/common/validations/typeValidations.js +36 -36
  30. package/src/defaults/configs/auditConfigs.js +124 -124
  31. package/src/defaults/configs/coverage.js +227 -227
  32. package/src/defaults/configs/polices.js +75 -75
  33. package/src/defaults/configs/requirement.js +32 -32
  34. package/src/defaults/index.js +6 -6
  35. package/src/env.js +57 -57
  36. package/src/factory/globalRecord/globalRecord.js +43 -43
  37. package/src/factory/index.js +8 -8
  38. package/src/factory/records/records.js +231 -231
  39. package/src/factory/users/users.js +77 -77
  40. package/src/index.js +95 -95
  41. package/src/resources/policy/nonPdfFile.jpg +0 -0
  42. package/src/saas/internal-api/accountDirectory/api/accountDirectory.api.js +50 -50
  43. package/src/saas/internal-api/accountDirectory/api/accountDirectory.service.js +182 -182
  44. package/src/saas/internal-api/accountDirectory/index.js +4 -4
  45. package/src/saas/internal-api/accountDirectory/models/accountDirectory.model.js +40 -40
  46. package/src/saas/internal-api/accounts/api/core/accounts.core.api.js +35 -35
  47. package/src/saas/internal-api/accounts/api/core/accounts.core.service.js +93 -93
  48. package/src/saas/internal-api/accounts/api/emailCustomization/accounts.email.customizations.api.js +29 -29
  49. package/src/saas/internal-api/accounts/api/emailCustomization/accounts.email.customizations.service.js +61 -61
  50. package/src/saas/internal-api/accounts/api/openapi/accounts.openapi.api.js +48 -48
  51. package/src/saas/internal-api/accounts/api/openapi/accounts.openapi.service.js +74 -74
  52. package/src/saas/internal-api/accounts/api/settings/settings.api.js +21 -21
  53. package/src/saas/internal-api/accounts/api/settings/settings.service.js +41 -41
  54. package/src/saas/internal-api/accounts/consts/consts.js +8 -8
  55. package/src/saas/internal-api/accounts/index.js +22 -22
  56. package/src/saas/internal-api/accounts/models/core/create.account.model.js +16 -16
  57. package/src/saas/internal-api/accounts/models/settings/update.settings.model.js +42 -42
  58. package/src/saas/internal-api/accounts/utils/utils.js +59 -59
  59. package/src/saas/internal-api/agreement/api/agreement.api.js +39 -39
  60. package/src/saas/internal-api/agreement/api/agreement.service.js +121 -121
  61. package/src/saas/internal-api/agreement/consts/consts.js +10 -10
  62. package/src/saas/internal-api/agreement/index.js +12 -12
  63. package/src/saas/internal-api/agreement/models/create.agreement.model.js +12 -12
  64. package/src/saas/internal-api/agreement/models/createAgreementByAuditorModel.js +11 -11
  65. package/src/saas/internal-api/agreement/models/createAgreementByPMModel.js +13 -13
  66. package/src/saas/internal-api/auditCustomerRules/api/customer.rules.api.js +43 -43
  67. package/src/saas/internal-api/auditCustomerRules/api/customer.rules.service.js +105 -105
  68. package/src/saas/internal-api/auditCustomerRules/consts/customer.rule.js +11 -11
  69. package/src/saas/internal-api/auditCustomerRules/index.js +6 -6
  70. package/src/saas/internal-api/auditCustomerRules/models/customer.rule.model.js +46 -46
  71. package/src/saas/internal-api/auditCustomerRules/utils/customer.rule.util.js +19 -19
  72. package/src/saas/internal-api/auditNotes/api/audit.notes.api.js +40 -40
  73. package/src/saas/internal-api/auditNotes/api/audit.notes.service.js +115 -115
  74. package/src/saas/internal-api/auditNotes/index.js +4 -4
  75. package/src/saas/internal-api/auditNotes/models/audit.note.model.js +30 -30
  76. package/src/saas/internal-api/auth/api/auth.api.js +27 -27
  77. package/src/saas/internal-api/auth/api/auth.service.js +90 -90
  78. package/src/saas/internal-api/auth/index.js +3 -3
  79. package/src/saas/internal-api/coi/api/coi.api.js +45 -45
  80. package/src/saas/internal-api/coi/api/coi.service.js +39 -39
  81. package/src/saas/internal-api/coi/consts/hashes.js +4 -4
  82. package/src/saas/internal-api/coi/consts/uploaderTypes.js +5 -5
  83. package/src/saas/internal-api/coi/index.js +14 -14
  84. package/src/saas/internal-api/coi/models/Combine.last.two.cois.model.js +25 -25
  85. package/src/saas/internal-api/coi/models/submit.coi.model.js +19 -19
  86. package/src/saas/internal-api/coi/utils/utils.js +117 -117
  87. package/src/saas/internal-api/compliance/api/audit/audit.api.js +115 -115
  88. package/src/saas/internal-api/compliance/api/audit/audit.service.js +300 -300
  89. package/src/saas/internal-api/compliance/api/convert/convert.api.js +17 -17
  90. package/src/saas/internal-api/compliance/api/convert/convert.service.js +11 -11
  91. package/src/saas/internal-api/compliance/api/coverage/coverage.api.js +33 -33
  92. package/src/saas/internal-api/compliance/api/coverage/coverage.service.js +48 -48
  93. package/src/saas/internal-api/compliance/api/overrideGap/override.gap.api.js +38 -38
  94. package/src/saas/internal-api/compliance/api/overrideGap/override.gap.service.js +182 -182
  95. package/src/saas/internal-api/compliance/consts/audit.js +110 -110
  96. package/src/saas/internal-api/compliance/index.js +33 -33
  97. package/src/saas/internal-api/compliance/models/audit/audit.model.js +96 -96
  98. package/src/saas/internal-api/compliance/models/waive/waive.model.js +49 -49
  99. package/src/saas/internal-api/compliance/utils/auditUtil.js +254 -254
  100. package/src/saas/internal-api/compliance/utils/coverageUtil.js +40 -40
  101. package/src/saas/internal-api/contractors/api/contractors.api.js +203 -203
  102. package/src/saas/internal-api/contractors/api/contractors.service.js +342 -342
  103. package/src/saas/internal-api/contractors/consts/consts.js +6 -6
  104. package/src/saas/internal-api/contractors/index.js +8 -8
  105. package/src/saas/internal-api/contractors/models/assign.requirement.model.js +10 -10
  106. package/src/saas/internal-api/contractors/models/edit.contractor.model.js +62 -62
  107. package/src/saas/internal-api/contractors/models/link.request.model.js +10 -10
  108. package/src/saas/internal-api/contractors/models/subscription.contractor.model.js +13 -13
  109. package/src/saas/internal-api/contractors/models/verification.contractor.model.js +27 -27
  110. package/src/saas/internal-api/contractors/utils.js +25 -25
  111. package/src/saas/internal-api/dashboard/api/recordList.api.js +38 -38
  112. package/src/saas/internal-api/dashboard/api/recordList.service.js +60 -60
  113. package/src/saas/internal-api/dashboard/index.js +5 -5
  114. package/src/saas/internal-api/dashboard/models/dashboard.filter.criteria.model.js +38 -38
  115. package/src/saas/internal-api/dbEmails/api/db.emails.api.js +25 -25
  116. package/src/saas/internal-api/dbEmails/api/db.emails.service.js +156 -156
  117. package/src/saas/internal-api/dbEmails/consts/consts.js +55 -55
  118. package/src/saas/internal-api/dbEmails/index.js +6 -6
  119. package/src/saas/internal-api/dbEmails/models/db.emails.model.js +22 -22
  120. package/src/saas/internal-api/dbEmails/utils/util.js +87 -87
  121. package/src/saas/internal-api/emailCustomization/api/email.customization.api.js +26 -26
  122. package/src/saas/internal-api/emailCustomization/api/email.customization.service.js +50 -50
  123. package/src/saas/internal-api/emailCustomization/index.js +3 -3
  124. package/src/saas/internal-api/globalRecord/api/global.record.api.js +101 -101
  125. package/src/saas/internal-api/globalRecord/api/global.record.service.js +117 -117
  126. package/src/saas/internal-api/globalRecord/consts.js +20 -20
  127. package/src/saas/internal-api/globalRecord/index.js +6 -6
  128. package/src/saas/internal-api/globalRecord/models/global.record.model.js +60 -60
  129. package/src/saas/internal-api/globalRecord/utils/util.js +161 -161
  130. package/src/saas/internal-api/homepageCharts/api/charts.api.js +12 -12
  131. package/src/saas/internal-api/homepageCharts/api/charts.service.js +7 -7
  132. package/src/saas/internal-api/homepageCharts/index.js +3 -3
  133. package/src/saas/internal-api/projects/api/core/projects.api.js +39 -39
  134. package/src/saas/internal-api/projects/api/core/projects.service.js +70 -70
  135. package/src/saas/internal-api/projects/api/settings/project.settings.api.js +18 -18
  136. package/src/saas/internal-api/projects/api/settings/project.settings.service.js +35 -35
  137. package/src/saas/internal-api/projects/consts/defaultProject.js +3 -3
  138. package/src/saas/internal-api/projects/index.js +24 -24
  139. package/src/saas/internal-api/projects/models/core/create.project.model.js +41 -41
  140. package/src/saas/internal-api/projects/models/core/update.project.model.js +47 -47
  141. package/src/saas/internal-api/projects/models/settings/update.project.settings.model.js +40 -40
  142. package/src/saas/internal-api/projects/utils/utils.js +155 -155
  143. package/src/saas/internal-api/recordHub/api/record.hub.api.js +14 -14
  144. package/src/saas/internal-api/recordHub/api/record.hub.service.js +21 -21
  145. package/src/saas/internal-api/recordHub/index.js +3 -3
  146. package/src/saas/internal-api/recordNotes/api/record.notes.api.js +38 -38
  147. package/src/saas/internal-api/recordNotes/api/record.notes.service.js +47 -47
  148. package/src/saas/internal-api/recordNotes/api/record.notes.utils.js +12 -12
  149. package/src/saas/internal-api/recordNotes/index.js +3 -3
  150. package/src/saas/internal-api/reports/api/reports.api.js +62 -62
  151. package/src/saas/internal-api/reports/api/reports.service.js +79 -79
  152. package/src/saas/internal-api/reports/consts/consts.js +74 -74
  153. package/src/saas/internal-api/reports/index.js +15 -15
  154. package/src/saas/internal-api/reports/models/report.model.js +27 -27
  155. package/src/saas/internal-api/requests/api/requests.api.js +120 -120
  156. package/src/saas/internal-api/requests/api/requests.service.js +272 -272
  157. package/src/saas/internal-api/requests/index.js +20 -20
  158. package/src/saas/internal-api/requests/models/create.request.model.js +33 -33
  159. package/src/saas/internal-api/requests/models/draft.request.criteria.model.js +18 -18
  160. package/src/saas/internal-api/requests/models/draft.request.report.model.js +14 -14
  161. package/src/saas/internal-api/requests/models/edit.request.model.js +31 -31
  162. package/src/saas/internal-api/requests/models/requestListCriteriaModel.js +17 -17
  163. package/src/saas/internal-api/requests/models/tenant.request.model.js +9 -9
  164. package/src/saas/internal-api/requests/utils.js +8 -8
  165. package/src/saas/internal-api/requestsTable/api/requests.table.api.js +20 -20
  166. package/src/saas/internal-api/requestsTable/api/requests.table.service.js +14 -14
  167. package/src/saas/internal-api/requestsTable/index.js +3 -3
  168. package/src/saas/internal-api/requirements/api/requirements.api.js +57 -57
  169. package/src/saas/internal-api/requirements/api/requirements.service.js +177 -177
  170. package/src/saas/internal-api/requirements/consts/attributeTypes.json +8 -8
  171. package/src/saas/internal-api/requirements/consts/consts.js +6 -6
  172. package/src/saas/internal-api/requirements/index.js +10 -10
  173. package/src/saas/internal-api/requirements/models/create.requirement.model.js +17 -17
  174. package/src/saas/internal-api/requirements/models/policy.model.js +35 -35
  175. package/src/saas/internal-api/requirements/models/update.requirement.model.js +19 -19
  176. package/src/saas/internal-api/requirements/utils/utils.js +129 -129
  177. package/src/saas/internal-api/serviceArea/api/coordinates.api.js +12 -12
  178. package/src/saas/internal-api/serviceArea/api/coordinates.service.js +7 -7
  179. package/src/saas/internal-api/serviceArea/index.js +4 -4
  180. package/src/saas/internal-api/serviceArea/utils/utils.js +8 -8
  181. package/src/saas/internal-api/tabs/api/tabs.api.js +32 -32
  182. package/src/saas/internal-api/tabs/api/tabs.service.js +54 -54
  183. package/src/saas/internal-api/tabs/index.js +3 -3
  184. package/src/saas/internal-api/tabs/models/tabs.model.js +19 -19
  185. package/src/saas/internal-api/thread-scheduler/runner.js +55 -55
  186. package/src/saas/internal-api/uploadFiles/api/upload.file.api.js +49 -49
  187. package/src/saas/internal-api/uploadFiles/api/upload.file.service.js +117 -86
  188. package/src/saas/internal-api/uploadFiles/consts.js +31 -12
  189. package/src/saas/internal-api/uploadFiles/index.js +11 -9
  190. package/src/saas/internal-api/uploadFiles/models/create.policy.file.model.js +11 -11
  191. package/src/saas/internal-api/users/api/tenantApp/tenant.app.api.js +38 -38
  192. package/src/saas/internal-api/users/api/tenantApp/tenant.app.service.js +108 -108
  193. package/src/saas/internal-api/users/api/users.api.js +121 -127
  194. package/src/saas/internal-api/users/api/users.service.js +214 -225
  195. package/src/saas/internal-api/users/index.js +16 -16
  196. package/src/saas/internal-api/users/models/create.inner.system.user.model.js +18 -18
  197. package/src/saas/internal-api/users/models/notification.settings.model.js +12 -12
  198. package/src/saas/internal-api/users/models/tenent.user.model.js +11 -11
  199. package/src/saas/internal-api/users/models/users.model.js +41 -41
  200. package/src/saas/internal-api/users/utils/util.js +39 -39
  201. package/src/saas/internal-api/vendorProfile/api/vendor.profile.api.js +20 -20
  202. package/src/saas/internal-api/vendorProfile/api/vendor.profile.service.js +14 -14
  203. package/src/saas/internal-api/vendorProfile/index.js +3 -3
  204. package/src/saas/openapi/accounts/accounts.api.js +17 -17
  205. package/src/saas/openapi/accounts/accounts.service.js +11 -11
  206. package/src/saas/openapi/coi/coi.api.js +30 -30
  207. package/src/saas/openapi/coi/coi.service.js +43 -43
  208. package/src/saas/openapi/projects/projects.api.js +83 -83
  209. package/src/saas/openapi/projects/projects.service.js +64 -64
  210. package/src/saas/openapi/requests/index.js +7 -7
  211. package/src/saas/openapi/requests/models/invite.request.model.js +40 -40
  212. package/src/saas/openapi/requests/models/update.request.model.js +35 -35
  213. package/src/saas/openapi/requests/requests.api.js +87 -87
  214. package/src/saas/openapi/requests/requests.service.js +81 -81
  215. package/src/saas/openapi/requirements/index.js +6 -6
  216. package/src/saas/openapi/requirements/models/copy.requirement.model.js +10 -10
  217. package/src/saas/openapi/requirements/requirements.api.js +41 -41
  218. package/src/saas/openapi/requirements/requirements.service.js +49 -49
  219. package/src/saas/openapi/tabs/index.js +6 -6
  220. package/src/saas/openapi/tabs/models/create.tab.model.js +6 -6
  221. package/src/saas/openapi/tabs/tabs.api.js +27 -27
  222. package/src/saas/openapi/tabs/tabs.service.js +19 -19
  223. package/src/saas/openapi/users/user.model.js +10 -10
  224. package/src/saas/openapi/users/users.api.js +33 -33
  225. package/src/saas/openapi/users/users.service.js +41 -41
  226. package/tests/env.test.js +40 -40
  227. package/tests/validation.test.js +83 -83
@@ -1,4 +1,4 @@
1
- const models = require('./models/accountDirectory.model');
2
- const services = require('./api/accountDirectory.service');
3
-
4
- module.exports = { services, models };
1
+ const models = require('./models/accountDirectory.model');
2
+ const services = require('./api/accountDirectory.service');
3
+
4
+ module.exports = { services, models };
@@ -1,40 +1,40 @@
1
- class AccountDirectoryRecordTableFilterModel {
2
- constructor({
3
- accountId,
4
- searchTerm = '',
5
- selectedRecordTypes = [],
6
- selectedStates = [],
7
- sortBy = null,
8
- sortOrder = null,
9
- rowsPerPage = null,
10
- pageNum = null
11
- } = {}) {
12
- this.accountId = accountId;
13
- this.searchTerm = searchTerm;
14
- this.selectedRecordTypes = selectedRecordTypes;
15
- this.selectedStates = selectedStates;
16
- this.sortBy = sortBy;
17
- this.sortOrder = sortOrder;
18
- this.rowsPerPage = rowsPerPage;
19
- this.pageNum = pageNum;
20
- }
21
- }
22
-
23
- class AccountDirectoryRequestTableFilterModel {
24
- constructor({
25
- accountId,
26
- globalRecordId,
27
- recordId,
28
- activityStatus
29
- } = {}) {
30
- this.accountId = accountId;
31
- this.globalRecordId = globalRecordId;
32
- this.recordId = recordId;
33
- this.activityStatus = activityStatus;
34
- }
35
- }
36
-
37
- module.exports = {
38
- AccountDirectoryRecordTableFilterModel,
39
- AccountDirectoryRequestTableFilterModel
40
- };
1
+ class AccountDirectoryRecordTableFilterModel {
2
+ constructor({
3
+ accountId,
4
+ searchTerm = '',
5
+ selectedRecordTypes = [],
6
+ selectedStates = [],
7
+ sortBy = null,
8
+ sortOrder = null,
9
+ rowsPerPage = null,
10
+ pageNum = null
11
+ } = {}) {
12
+ this.accountId = accountId;
13
+ this.searchTerm = searchTerm;
14
+ this.selectedRecordTypes = selectedRecordTypes;
15
+ this.selectedStates = selectedStates;
16
+ this.sortBy = sortBy;
17
+ this.sortOrder = sortOrder;
18
+ this.rowsPerPage = rowsPerPage;
19
+ this.pageNum = pageNum;
20
+ }
21
+ }
22
+
23
+ class AccountDirectoryRequestTableFilterModel {
24
+ constructor({
25
+ accountId,
26
+ globalRecordId,
27
+ recordId,
28
+ activityStatus
29
+ } = {}) {
30
+ this.accountId = accountId;
31
+ this.globalRecordId = globalRecordId;
32
+ this.recordId = recordId;
33
+ this.activityStatus = activityStatus;
34
+ }
35
+ }
36
+
37
+ module.exports = {
38
+ AccountDirectoryRecordTableFilterModel,
39
+ AccountDirectoryRequestTableFilterModel
40
+ };
@@ -1,35 +1,35 @@
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
- getAccount: `${backendUrl}/saas/accounts`,
8
- create: `${backendUrl}/saas/createaccount`,
9
- delete: `${backendUrl}/saas/account`,
10
- edit: accountId => `${backendUrl}/saas/account/${accountId}/settings`,
11
- getFromCertificateHolder: certificateHolder => `${backendUrl}/jcsc/account/certificate-holder-name/${certificateHolder}`
12
- };
13
-
14
- const create = (account, context) => {
15
- return requests.postRequestHandler(Endpoints.create, account, context);
16
- };
17
-
18
- const deleteAccount = (accountId, context) => {
19
- return requests.deleteRequestHandler(Endpoints.delete, context, {}, { 'userId': accountId });
20
- };
21
-
22
- const updateAccountSettings = (accountId, settings, context) => {
23
- return requests.putRequestHandler(Endpoints.edit(accountId), { accountId, ... settings }, context);
24
- };
25
-
26
- const getByName = (accountName, context) => {
27
- const params = { name: accountName };
28
- return requests.getRequestHandler(Endpoints.getAccount, params, context);
29
- };
30
-
31
- const getFromCertificateHolder = certificateHolder => {
32
- return internalRequests.getRequestHandler(Endpoints.getFromCertificateHolder(certificateHolder), {});
33
- };
34
-
35
- module.exports = { create, getByName, deleteAccount, updateAccountSettings, getFromCertificateHolder };
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
+ getAccount: `${backendUrl}/saas/accounts`,
8
+ create: `${backendUrl}/saas/createaccount`,
9
+ delete: `${backendUrl}/saas/account`,
10
+ edit: accountId => `${backendUrl}/saas/account/${accountId}/settings`,
11
+ getFromCertificateHolder: certificateHolder => `${backendUrl}/jcsc/account/certificate-holder-name/${certificateHolder}`
12
+ };
13
+
14
+ const create = (account, context) => {
15
+ return requests.postRequestHandler(Endpoints.create, account, context);
16
+ };
17
+
18
+ const deleteAccount = (accountId, context) => {
19
+ return requests.deleteRequestHandler(Endpoints.delete, context, {}, { 'userId': accountId });
20
+ };
21
+
22
+ const updateAccountSettings = (accountId, settings, context) => {
23
+ return requests.putRequestHandler(Endpoints.edit(accountId), { accountId, ... settings }, context);
24
+ };
25
+
26
+ const getByName = (accountName, context) => {
27
+ const params = { name: accountName };
28
+ return requests.getRequestHandler(Endpoints.getAccount, params, context);
29
+ };
30
+
31
+ const getFromCertificateHolder = certificateHolder => {
32
+ return internalRequests.getRequestHandler(Endpoints.getFromCertificateHolder(certificateHolder), {});
33
+ };
34
+
35
+ module.exports = { create, getByName, deleteAccount, updateAccountSettings, getFromCertificateHolder };
@@ -1,93 +1,93 @@
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 getAccount = async (accountName, context) => {
22
- const response = await accountsAPI.getByName(accountName, context);
23
- expect(response.status, 'Failed to get accounts by name').to.equal(httpResponseStatusCodes.OK);
24
-
25
- const existingAccounts = response.data;
26
-
27
- if (!existingAccounts || !existingAccounts.length) {
28
- return null;
29
- }
30
-
31
- if (existingAccounts.length > 1) {
32
- throw new Error(`Got more than one account with the name: ${accountName}. IDs: ${existingAccounts.map(item => item.userId).join(', ')}`);
33
- }
34
-
35
- return existingAccounts[0];
36
- };
37
-
38
- const getOrCreateAccount = async (createAccountModel, context) => {
39
- validateType(createAccountModel, CreateAccountModel);
40
- const existingAccount = await getAccount(createAccountModel.companyName, context);
41
-
42
- if (existingAccount) {
43
- return existingAccount;
44
- }
45
-
46
- const response = await accountsAPI.create(createAccountModel, context);
47
-
48
- if (!response.data) {
49
- throw new Error(`Account by the name ${createAccountModel.companyName} was not created\n${response}`);
50
- }
51
-
52
- return response.data;
53
- };
54
-
55
- const getAccountId = async (accountName, context) => {
56
- const account = await getAccount(accountName, context);
57
-
58
- if (!account) {
59
- console.error(`Account ${accountName} does not exist`);
60
- return null;
61
- }
62
-
63
- return account.userId;
64
- };
65
-
66
- const deleteAccountByName = async (accountName, context) => {
67
- const accountId = await getAccountId(accountName, context);
68
- return accountsAPI.deleteAccount(accountId, context);
69
- };
70
-
71
- const deleteAccountById = async (accountId, context) => {
72
- return accountsAPI.deleteAccount(accountId, context);
73
- };
74
-
75
- const getFromCertificateHolder = async certificateHolder => {
76
- const response = await accountsAPI.getFromCertificateHolder(certificateHolder);
77
-
78
- if (response.status !== httpResponseStatusCodes.OK) {
79
- throw Error(`Failed to get account by certificate holder: ${certificateHolder} - Response: ${response.status}`);
80
- }
81
-
82
- return response.data;
83
- };
84
-
85
- module.exports = {
86
- getAccount,
87
- getOrCreateAccount,
88
- getAccountId,
89
- createAccount,
90
- deleteAccountByName,
91
- deleteAccountById,
92
- getFromCertificateHolder
93
- };
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 getAccount = async (accountName, context) => {
22
+ const response = await accountsAPI.getByName(accountName, context);
23
+ expect(response.status, 'Failed to get accounts by name').to.equal(httpResponseStatusCodes.OK);
24
+
25
+ const existingAccounts = response.data;
26
+
27
+ if (!existingAccounts || !existingAccounts.length) {
28
+ return null;
29
+ }
30
+
31
+ if (existingAccounts.length > 1) {
32
+ throw new Error(`Got more than one account with the name: ${accountName}. IDs: ${existingAccounts.map(item => item.userId).join(', ')}`);
33
+ }
34
+
35
+ return existingAccounts[0];
36
+ };
37
+
38
+ const getOrCreateAccount = async (createAccountModel, context) => {
39
+ validateType(createAccountModel, CreateAccountModel);
40
+ const existingAccount = await getAccount(createAccountModel.companyName, context);
41
+
42
+ if (existingAccount) {
43
+ return existingAccount;
44
+ }
45
+
46
+ const response = await accountsAPI.create(createAccountModel, context);
47
+
48
+ if (!response.data) {
49
+ throw new Error(`Account by the name ${createAccountModel.companyName} was not created\n${response}`);
50
+ }
51
+
52
+ return response.data;
53
+ };
54
+
55
+ const getAccountId = async (accountName, context) => {
56
+ const account = await getAccount(accountName, context);
57
+
58
+ if (!account) {
59
+ console.error(`Account ${accountName} does not exist`);
60
+ return null;
61
+ }
62
+
63
+ return account.userId;
64
+ };
65
+
66
+ const deleteAccountByName = async (accountName, context) => {
67
+ const accountId = await getAccountId(accountName, context);
68
+ return accountsAPI.deleteAccount(accountId, context);
69
+ };
70
+
71
+ const deleteAccountById = async (accountId, context) => {
72
+ return accountsAPI.deleteAccount(accountId, context);
73
+ };
74
+
75
+ const getFromCertificateHolder = async certificateHolder => {
76
+ const response = await accountsAPI.getFromCertificateHolder(certificateHolder);
77
+
78
+ if (response.status !== httpResponseStatusCodes.OK) {
79
+ throw Error(`Failed to get account by certificate holder: ${certificateHolder} - Response: ${response.status}`);
80
+ }
81
+
82
+ return response.data;
83
+ };
84
+
85
+ module.exports = {
86
+ getAccount,
87
+ getOrCreateAccount,
88
+ getAccountId,
89
+ createAccount,
90
+ deleteAccountByName,
91
+ deleteAccountById,
92
+ getFromCertificateHolder
93
+ };
@@ -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,61 +1,61 @@
1
- const FormData = require('form-data');
2
-
3
- const emailCustomizationsAPI = require('./accounts.email.customizations.api');
4
- const httpResponseStatusCodes = require('../../../../../common/httpResponseStatusCodes.json');
5
-
6
- const getCobranding = async (accountId, context) => {
7
- const response = await emailCustomizationsAPI.getCobranding(accountId, context);
8
-
9
- if (response.status !== httpResponseStatusCodes.OK) {
10
- throw Error(`Failed to get cobranding by account id: ${accountId} - Response: ${response.status}`);
11
- }
12
-
13
- return response.data;
14
- };
15
-
16
- const deleteCobranding = async (accountId, context) => {
17
- const response = await emailCustomizationsAPI.deleteCobranding(accountId, context);
18
-
19
- if (response.status !== httpResponseStatusCodes.OK) {
20
- throw Error(`Failed to delete cobranding by account id: ${accountId} - Response: ${response.status}`);
21
- }
22
-
23
- return response.data;
24
- };
25
-
26
- const publishCobranding = async (publishCobrandingModel, context) => {
27
- const publishCobrandingStr = JSON.stringify(publishCobrandingModel);
28
-
29
- const formData = new FormData();
30
- // File names are passed as empty so the integration tests won't need to start handle files
31
- // In this case the backend just take the file name from the cobrandingData object
32
- // and doesn't check against S3. This will work as long as we won't check the content of the cobranded
33
- // emails themselves as there there won't be images.
34
- formData.append('file', '');
35
- formData.append('coBrandingData', publishCobrandingStr) ;
36
-
37
- const response = await emailCustomizationsAPI.publishCobranding(formData, context);
38
-
39
- if (response.status !== httpResponseStatusCodes.OK) {
40
- throw Error(`Failed to publish cobranding with from email: ${publishCobrandingModel.fromEmailAddress} - Response: ${response.status}`);
41
- }
42
-
43
- return response.data;
44
- };
45
-
46
- const getAccountsByCobrandingEmail = async email => {
47
- const response = await emailCustomizationsAPI.getAccountsByCobrandingEmail(email);
48
-
49
- if (response.status !== httpResponseStatusCodes.OK) {
50
- throw Error(`Failed to get account ids by email: ${email} - Response: ${response.status}`);
51
- }
52
-
53
- return response.data;
54
- };
55
-
56
- module.exports = {
57
- getCobranding,
58
- deleteCobranding,
59
- publishCobranding,
60
- getAccountsByCobrandingEmail
61
- };
1
+ const FormData = require('form-data');
2
+
3
+ const emailCustomizationsAPI = require('./accounts.email.customizations.api');
4
+ const httpResponseStatusCodes = require('../../../../../common/httpResponseStatusCodes.json');
5
+
6
+ const getCobranding = async (accountId, context) => {
7
+ const response = await emailCustomizationsAPI.getCobranding(accountId, context);
8
+
9
+ if (response.status !== httpResponseStatusCodes.OK) {
10
+ throw Error(`Failed to get cobranding by account id: ${accountId} - Response: ${response.status}`);
11
+ }
12
+
13
+ return response.data;
14
+ };
15
+
16
+ const deleteCobranding = async (accountId, context) => {
17
+ const response = await emailCustomizationsAPI.deleteCobranding(accountId, context);
18
+
19
+ if (response.status !== httpResponseStatusCodes.OK) {
20
+ throw Error(`Failed to delete cobranding by account id: ${accountId} - Response: ${response.status}`);
21
+ }
22
+
23
+ return response.data;
24
+ };
25
+
26
+ const publishCobranding = async (publishCobrandingModel, context) => {
27
+ const publishCobrandingStr = JSON.stringify(publishCobrandingModel);
28
+
29
+ const formData = new FormData();
30
+ // File names are passed as empty so the integration tests won't need to start handle files
31
+ // In this case the backend just take the file name from the cobrandingData object
32
+ // and doesn't check against S3. This will work as long as we won't check the content of the cobranded
33
+ // emails themselves as there there won't be images.
34
+ formData.append('file', '');
35
+ formData.append('coBrandingData', publishCobrandingStr) ;
36
+
37
+ const response = await emailCustomizationsAPI.publishCobranding(formData, context);
38
+
39
+ if (response.status !== httpResponseStatusCodes.OK) {
40
+ throw Error(`Failed to publish cobranding with from email: ${publishCobrandingModel.fromEmailAddress} - Response: ${response.status}`);
41
+ }
42
+
43
+ return response.data;
44
+ };
45
+
46
+ const getAccountsByCobrandingEmail = async email => {
47
+ const response = await emailCustomizationsAPI.getAccountsByCobrandingEmail(email);
48
+
49
+ if (response.status !== httpResponseStatusCodes.OK) {
50
+ throw Error(`Failed to get account ids by email: ${email} - Response: ${response.status}`);
51
+ }
52
+
53
+ return response.data;
54
+ };
55
+
56
+ module.exports = {
57
+ getCobranding,
58
+ deleteCobranding,
59
+ publishCobranding,
60
+ getAccountsByCobrandingEmail
61
+ };
@@ -1,48 +1,48 @@
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
- getApiKeyByKeyValue: `${backendUrl}/saas/integration-tests/api-keys`,
8
- removeStaticApiKey: accountId => `${backendUrl}/saas/integration-tests/accounts/${accountId}/static-api-keys`,
9
- dynamicApiKey: accountId => `${backendUrl}/saas/integration-tests/accounts/${accountId}/dynamic-api-key`
10
- };
11
-
12
- const createStaticApiKey = (data, context) => {
13
- return requests.postRequestHandler(Endpoints.createApiKey, data, context);
14
- };
15
-
16
- const createGeneratorApiKey = (data, context) => {
17
- return requests.postRequestHandler(Endpoints.createApiKey, data, context);
18
- };
19
-
20
- const getStaticApiKeyByAccountId = (accountId, context) => {
21
- return requests.getRequestHandler(Endpoints.getStaticApiKeyByAccountId(accountId), {}, context);
22
- };
23
-
24
- const getApiKeyDetails = (apiKeyValue, context) => {
25
- return requests.getRequestHandler(Endpoints.getApiKeyByKeyValue, { apiKeyValue }, context);
26
- };
27
-
28
- const deleteStaticApiKey = (accountId, context) => {
29
- return requests.deleteRequestHandler(Endpoints.removeStaticApiKey(accountId), context);
30
- };
31
-
32
- const deleteDynamicApiKey = (accountId, context) => {
33
- return requests.deleteRequestHandler(Endpoints.dynamicApiKey(accountId), context);
34
- };
35
-
36
- const makeDynamicApiKeyExpired = (accountId, context) => {
37
- return requests.patchRequestHandler(Endpoints.dynamicApiKey(accountId), context, {});
38
- };
39
-
40
- module.exports = {
41
- createStaticApiKey,
42
- createGeneratorApiKey,
43
- getStaticApiKeyByAccountId,
44
- getApiKeyDetails,
45
- makeDynamicApiKeyExpired,
46
- deleteStaticApiKey,
47
- deleteDynamicApiKey
48
- };
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
+ getApiKeyByKeyValue: `${backendUrl}/saas/integration-tests/api-keys`,
8
+ removeStaticApiKey: accountId => `${backendUrl}/saas/integration-tests/accounts/${accountId}/static-api-keys`,
9
+ dynamicApiKey: accountId => `${backendUrl}/saas/integration-tests/accounts/${accountId}/dynamic-api-key`
10
+ };
11
+
12
+ const createStaticApiKey = (data, context) => {
13
+ return requests.postRequestHandler(Endpoints.createApiKey, data, context);
14
+ };
15
+
16
+ const createGeneratorApiKey = (data, context) => {
17
+ return requests.postRequestHandler(Endpoints.createApiKey, data, context);
18
+ };
19
+
20
+ const getStaticApiKeyByAccountId = (accountId, context) => {
21
+ return requests.getRequestHandler(Endpoints.getStaticApiKeyByAccountId(accountId), {}, context);
22
+ };
23
+
24
+ const getApiKeyDetails = (apiKeyValue, context) => {
25
+ return requests.getRequestHandler(Endpoints.getApiKeyByKeyValue, { apiKeyValue }, context);
26
+ };
27
+
28
+ const deleteStaticApiKey = (accountId, context) => {
29
+ return requests.deleteRequestHandler(Endpoints.removeStaticApiKey(accountId), context);
30
+ };
31
+
32
+ const deleteDynamicApiKey = (accountId, context) => {
33
+ return requests.deleteRequestHandler(Endpoints.dynamicApiKey(accountId), context);
34
+ };
35
+
36
+ const makeDynamicApiKeyExpired = (accountId, context) => {
37
+ return requests.patchRequestHandler(Endpoints.dynamicApiKey(accountId), context, {});
38
+ };
39
+
40
+ module.exports = {
41
+ createStaticApiKey,
42
+ createGeneratorApiKey,
43
+ getStaticApiKeyByAccountId,
44
+ getApiKeyDetails,
45
+ makeDynamicApiKeyExpired,
46
+ deleteStaticApiKey,
47
+ deleteDynamicApiKey
48
+ };