@getjones/test-infra 3.0.2 → 3.0.3

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 (214) 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 +146 -123
  5. package/src/common/consts/accountSettings.js +10 -0
  6. package/src/common/consts/activationStatuses.js +6 -6
  7. package/src/common/consts/constantsForRecordsSortingAndFilters.js +40 -40
  8. package/src/common/consts/dashboardCharts.js +18 -18
  9. package/src/common/consts/ocrStatuses.js +6 -0
  10. package/src/common/consts/projectSettings.js +6 -6
  11. package/src/common/consts/recordTypes.js +5 -5
  12. package/src/common/consts/s3FileTypes.js +12 -12
  13. package/src/common/consts/userTypes.js +8 -8
  14. package/src/common/errorCodes.js +3 -3
  15. package/src/common/httpResponseStatusCodes.json +11 -11
  16. package/src/common/requests/apiKeyAuth/requests.js +44 -44
  17. package/src/common/requests/cookieAuth/requests.js +40 -40
  18. package/src/common/requests/internalAuth/requests.js +48 -48
  19. package/src/common/requests/requestHandlers.js +78 -78
  20. package/src/common/utils/complianceUtil.js +83 -83
  21. package/src/common/utils/configsUtil.js +22 -22
  22. package/src/common/utils/dataTypeUtils.js +41 -41
  23. package/src/common/utils/numberUtils.js +22 -22
  24. package/src/common/utils/objectUtils.js +7 -7
  25. package/src/common/utils/timeUtils.js +177 -177
  26. package/src/common/validations/errorValidation.js +16 -16
  27. package/src/common/validations/typeValidations.js +36 -36
  28. package/src/defaults/configs/auditConfigs.js +91 -91
  29. package/src/defaults/configs/coverage.js +227 -227
  30. package/src/defaults/configs/polices.js +67 -64
  31. package/src/defaults/configs/requirement.js +32 -32
  32. package/src/defaults/index.js +6 -6
  33. package/src/env.js +57 -57
  34. package/src/factory/globalRecord/globalRecord.js +70 -70
  35. package/src/factory/index.js +8 -8
  36. package/src/factory/records/records.js +169 -169
  37. package/src/factory/users/users.js +77 -77
  38. package/src/index.js +91 -91
  39. package/src/saas/internal-api/accounts/api/core/accounts.core.api.js +35 -35
  40. package/src/saas/internal-api/accounts/api/core/accounts.core.service.js +93 -93
  41. package/src/saas/internal-api/accounts/api/emailCustomization/accounts.email.customizations.api.js +29 -29
  42. package/src/saas/internal-api/accounts/api/emailCustomization/accounts.email.customizations.service.js +61 -61
  43. package/src/saas/internal-api/accounts/api/openapi/accounts.openapi.api.js +48 -48
  44. package/src/saas/internal-api/accounts/api/openapi/accounts.openapi.service.js +74 -74
  45. package/src/saas/internal-api/accounts/api/settings/settings.api.js +21 -21
  46. package/src/saas/internal-api/accounts/api/settings/settings.service.js +41 -41
  47. package/src/saas/internal-api/accounts/consts/consts.js +6 -6
  48. package/src/saas/internal-api/accounts/index.js +22 -22
  49. package/src/saas/internal-api/accounts/models/core/create.account.model.js +16 -16
  50. package/src/saas/internal-api/accounts/models/settings/update.settings.model.js +38 -38
  51. package/src/saas/internal-api/accounts/utils/utils.js +58 -58
  52. package/src/saas/internal-api/agreement/api/agreement.api.js +35 -35
  53. package/src/saas/internal-api/agreement/api/agreement.service.js +81 -81
  54. package/src/saas/internal-api/agreement/consts/consts.js +8 -8
  55. package/src/saas/internal-api/agreement/index.js +11 -11
  56. package/src/saas/internal-api/agreement/models/create.agreement.model.js +12 -12
  57. package/src/saas/internal-api/auditCustomerRules/api/customer.rules.api.js +43 -43
  58. package/src/saas/internal-api/auditCustomerRules/api/customer.rules.service.js +105 -105
  59. package/src/saas/internal-api/auditCustomerRules/consts/customer.rule.js +11 -11
  60. package/src/saas/internal-api/auditCustomerRules/index.js +6 -6
  61. package/src/saas/internal-api/auditCustomerRules/models/customer.rule.model.js +46 -46
  62. package/src/saas/internal-api/auditCustomerRules/utils/customer.rule.util.js +19 -19
  63. package/src/saas/internal-api/auditNotes/api/audit.notes.api.js +40 -40
  64. package/src/saas/internal-api/auditNotes/api/audit.notes.service.js +115 -115
  65. package/src/saas/internal-api/auditNotes/index.js +4 -4
  66. package/src/saas/internal-api/auditNotes/models/audit.note.model.js +30 -30
  67. package/src/saas/internal-api/auth/api/auth.api.js +27 -27
  68. package/src/saas/internal-api/auth/api/auth.service.js +90 -90
  69. package/src/saas/internal-api/auth/index.js +3 -3
  70. package/src/saas/internal-api/coi/api/coi.api.js +40 -40
  71. package/src/saas/internal-api/coi/api/coi.service.js +26 -26
  72. package/src/saas/internal-api/coi/consts/hashes.js +4 -4
  73. package/src/saas/internal-api/coi/consts/uploaderTypes.js +5 -5
  74. package/src/saas/internal-api/coi/index.js +14 -14
  75. package/src/saas/internal-api/coi/models/submit.coi.model.js +19 -9
  76. package/src/saas/internal-api/coi/utils/utils.js +70 -48
  77. package/src/saas/internal-api/compliance/api/audit/audit.api.js +100 -100
  78. package/src/saas/internal-api/compliance/api/audit/audit.service.js +242 -242
  79. package/src/saas/internal-api/compliance/api/convert/convert.api.js +17 -17
  80. package/src/saas/internal-api/compliance/api/convert/convert.service.js +11 -11
  81. package/src/saas/internal-api/compliance/api/coverage/coverage.api.js +33 -33
  82. package/src/saas/internal-api/compliance/api/coverage/coverage.service.js +48 -48
  83. package/src/saas/internal-api/compliance/api/overrideGap/override.gap.api.js +33 -33
  84. package/src/saas/internal-api/compliance/api/overrideGap/override.gap.service.js +141 -141
  85. package/src/saas/internal-api/compliance/consts/audit.js +103 -103
  86. package/src/saas/internal-api/compliance/index.js +33 -33
  87. package/src/saas/internal-api/compliance/models/audit/audit.model.js +94 -94
  88. package/src/saas/internal-api/compliance/models/waive/waive.model.js +49 -49
  89. package/src/saas/internal-api/compliance/utils/auditUtil.js +222 -222
  90. package/src/saas/internal-api/compliance/utils/coverageUtil.js +40 -40
  91. package/src/saas/internal-api/contractors/api/contractors.api.js +203 -185
  92. package/src/saas/internal-api/contractors/api/contractors.service.js +318 -259
  93. package/src/saas/internal-api/contractors/consts/consts.js +6 -6
  94. package/src/saas/internal-api/contractors/index.js +8 -8
  95. package/src/saas/internal-api/contractors/models/assign.requirement.model.js +10 -10
  96. package/src/saas/internal-api/contractors/models/edit.contractor.model.js +62 -62
  97. package/src/saas/internal-api/contractors/models/link.request.model.js +10 -10
  98. package/src/saas/internal-api/contractors/models/subscription.contractor.model.js +13 -0
  99. package/src/saas/internal-api/contractors/models/verification.contractor.model.js +27 -27
  100. package/src/saas/internal-api/contractors/utils.js +25 -25
  101. package/src/saas/internal-api/dashboard/api/recordList.api.js +38 -38
  102. package/src/saas/internal-api/dashboard/api/recordList.service.js +60 -60
  103. package/src/saas/internal-api/dashboard/index.js +5 -5
  104. package/src/saas/internal-api/dashboard/models/dashboard.filter.criteria.model.js +38 -38
  105. package/src/saas/internal-api/dbEmails/api/db.emails.api.js +25 -25
  106. package/src/saas/internal-api/dbEmails/api/db.emails.service.js +156 -147
  107. package/src/saas/internal-api/dbEmails/consts/consts.js +54 -54
  108. package/src/saas/internal-api/dbEmails/index.js +6 -6
  109. package/src/saas/internal-api/dbEmails/models/db.emails.model.js +22 -22
  110. package/src/saas/internal-api/dbEmails/utils/util.js +87 -82
  111. package/src/saas/internal-api/emailCustomization/api/email.customization.api.js +26 -26
  112. package/src/saas/internal-api/emailCustomization/api/email.customization.service.js +50 -50
  113. package/src/saas/internal-api/emailCustomization/index.js +3 -3
  114. package/src/saas/internal-api/globalRecord/api/global.record.api.js +95 -95
  115. package/src/saas/internal-api/globalRecord/api/global.record.service.js +105 -105
  116. package/src/saas/internal-api/globalRecord/consts.js +20 -20
  117. package/src/saas/internal-api/globalRecord/index.js +6 -6
  118. package/src/saas/internal-api/globalRecord/models/global.record.model.js +60 -60
  119. package/src/saas/internal-api/globalRecord/utils/util.js +161 -161
  120. package/src/saas/internal-api/homepageCharts/api/charts.api.js +12 -12
  121. package/src/saas/internal-api/homepageCharts/api/charts.service.js +7 -7
  122. package/src/saas/internal-api/homepageCharts/index.js +3 -3
  123. package/src/saas/internal-api/projects/api/core/projects.api.js +39 -39
  124. package/src/saas/internal-api/projects/api/core/projects.service.js +65 -65
  125. package/src/saas/internal-api/projects/api/settings/project.settings.api.js +18 -18
  126. package/src/saas/internal-api/projects/api/settings/project.settings.service.js +35 -35
  127. package/src/saas/internal-api/projects/consts/defaultProject.js +3 -3
  128. package/src/saas/internal-api/projects/index.js +24 -24
  129. package/src/saas/internal-api/projects/models/core/create.project.model.js +41 -41
  130. package/src/saas/internal-api/projects/models/core/update.project.model.js +47 -47
  131. package/src/saas/internal-api/projects/models/settings/update.project.settings.model.js +41 -41
  132. package/src/saas/internal-api/projects/utils/utils.js +156 -156
  133. package/src/saas/internal-api/recordNotes/api/record.notes.api.js +38 -38
  134. package/src/saas/internal-api/recordNotes/api/record.notes.service.js +47 -47
  135. package/src/saas/internal-api/recordNotes/api/record.notes.utils.js +12 -12
  136. package/src/saas/internal-api/recordNotes/index.js +3 -3
  137. package/src/saas/internal-api/reports/api/reports.api.js +39 -39
  138. package/src/saas/internal-api/reports/api/reports.service.js +34 -34
  139. package/src/saas/internal-api/reports/consts/consts.js +65 -65
  140. package/src/saas/internal-api/reports/index.js +15 -15
  141. package/src/saas/internal-api/reports/models/report.model.js +27 -27
  142. package/src/saas/internal-api/requests/api/requests.api.js +120 -120
  143. package/src/saas/internal-api/requests/api/requests.service.js +272 -272
  144. package/src/saas/internal-api/requests/index.js +20 -20
  145. package/src/saas/internal-api/requests/models/create.request.model.js +33 -33
  146. package/src/saas/internal-api/requests/models/draft.request.criteria.model.js +18 -18
  147. package/src/saas/internal-api/requests/models/draft.request.report.model.js +14 -14
  148. package/src/saas/internal-api/requests/models/edit.request.model.js +31 -31
  149. package/src/saas/internal-api/requests/models/requestListCriteriaModel.js +17 -17
  150. package/src/saas/internal-api/requests/models/tenant.request.model.js +9 -9
  151. package/src/saas/internal-api/requests/utils.js +8 -8
  152. package/src/saas/internal-api/requestsTable/api/requests.table.api.js +20 -20
  153. package/src/saas/internal-api/requestsTable/api/requests.table.service.js +14 -14
  154. package/src/saas/internal-api/requestsTable/index.js +3 -3
  155. package/src/saas/internal-api/requirements/api/requirements.api.js +51 -51
  156. package/src/saas/internal-api/requirements/api/requirements.service.js +153 -153
  157. package/src/saas/internal-api/requirements/consts/attributeTypes.json +6 -6
  158. package/src/saas/internal-api/requirements/consts/consts.js +6 -6
  159. package/src/saas/internal-api/requirements/index.js +10 -10
  160. package/src/saas/internal-api/requirements/models/create.requirement.model.js +17 -17
  161. package/src/saas/internal-api/requirements/models/policy.model.js +33 -33
  162. package/src/saas/internal-api/requirements/models/update.requirement.model.js +19 -19
  163. package/src/saas/internal-api/requirements/utils/utils.js +116 -116
  164. package/src/saas/internal-api/serviceArea/api/coordinates.api.js +12 -12
  165. package/src/saas/internal-api/serviceArea/api/coordinates.service.js +7 -7
  166. package/src/saas/internal-api/serviceArea/index.js +4 -4
  167. package/src/saas/internal-api/serviceArea/utils/utils.js +8 -8
  168. package/src/saas/internal-api/tabs/api/tabs.api.js +32 -32
  169. package/src/saas/internal-api/tabs/api/tabs.service.js +54 -54
  170. package/src/saas/internal-api/tabs/index.js +3 -3
  171. package/src/saas/internal-api/tabs/models/tabs.model.js +19 -19
  172. package/src/saas/internal-api/thread-scheduler/runner.js +39 -39
  173. package/src/saas/internal-api/uploadFiles/api/upload.file.api.js +31 -31
  174. package/src/saas/internal-api/uploadFiles/api/upload.file.service.js +42 -42
  175. package/src/saas/internal-api/uploadFiles/consts.js +12 -12
  176. package/src/saas/internal-api/uploadFiles/index.js +3 -3
  177. package/src/saas/internal-api/users/api/tenantApp/tenant.app.api.js +32 -32
  178. package/src/saas/internal-api/users/api/tenantApp/tenant.app.service.js +97 -97
  179. package/src/saas/internal-api/users/api/users.api.js +115 -115
  180. package/src/saas/internal-api/users/api/users.service.js +203 -203
  181. package/src/saas/internal-api/users/index.js +16 -16
  182. package/src/saas/internal-api/users/models/create.inner.system.user.model.js +18 -18
  183. package/src/saas/internal-api/users/models/notification.settings.model.js +12 -12
  184. package/src/saas/internal-api/users/models/tenent.user.model.js +11 -11
  185. package/src/saas/internal-api/users/models/users.model.js +41 -41
  186. package/src/saas/internal-api/users/utils/util.js +39 -39
  187. package/src/saas/internal-api/vendorProfile/api/vendor.profile.api.js +20 -20
  188. package/src/saas/internal-api/vendorProfile/api/vendor.profile.service.js +14 -14
  189. package/src/saas/internal-api/vendorProfile/index.js +3 -3
  190. package/src/saas/openapi/accounts/accounts.api.js +17 -17
  191. package/src/saas/openapi/accounts/accounts.service.js +11 -11
  192. package/src/saas/openapi/coi/coi.api.js +20 -20
  193. package/src/saas/openapi/coi/coi.service.js +13 -13
  194. package/src/saas/openapi/projects/projects.api.js +83 -83
  195. package/src/saas/openapi/projects/projects.service.js +64 -64
  196. package/src/saas/openapi/requests/index.js +7 -7
  197. package/src/saas/openapi/requests/models/invite.request.model.js +37 -37
  198. package/src/saas/openapi/requests/models/update.request.model.js +35 -35
  199. package/src/saas/openapi/requests/requests.api.js +82 -82
  200. package/src/saas/openapi/requests/requests.service.js +70 -70
  201. package/src/saas/openapi/requirements/index.js +6 -6
  202. package/src/saas/openapi/requirements/models/copy.requirement.model.js +10 -10
  203. package/src/saas/openapi/requirements/requirements.api.js +32 -32
  204. package/src/saas/openapi/requirements/requirements.service.js +37 -37
  205. package/src/saas/openapi/tabs/index.js +6 -6
  206. package/src/saas/openapi/tabs/models/create.tab.model.js +6 -6
  207. package/src/saas/openapi/tabs/tabs.api.js +27 -27
  208. package/src/saas/openapi/tabs/tabs.service.js +19 -19
  209. package/src/saas/openapi/users/user.model.js +10 -10
  210. package/src/saas/openapi/users/users.api.js +33 -33
  211. package/src/saas/openapi/users/users.service.js +41 -41
  212. package/tests/env.test.js +40 -40
  213. package/tests/validation.test.js +83 -83
  214. package/src/resources/virusFile.pdf +0 -0
package/src/index.js CHANGED
@@ -1,91 +1,91 @@
1
- const env = require('./env');
2
- const init = conf => {
3
- env.init(conf);
4
- const internalAPI = getInternalAPI();
5
- const openAPI = getOpenAPI();
6
-
7
- return { internalAPI, openAPI };
8
- };
9
-
10
- const getInternalAPI = () => {
11
- const factory = require('./factory');
12
- const defaults = require('./defaults');
13
- const auth = require('./saas/internal-api/auth');
14
- const accounts = require('./saas/internal-api/accounts');
15
-
16
- const projects = require('./saas/internal-api/projects');
17
- const tabs = require('./saas/internal-api/tabs');
18
-
19
- const requirements = require('./saas/internal-api/requirements');
20
- const contractors = require('./saas/internal-api/contractors');
21
- const requests = require('./saas/internal-api/requests');
22
-
23
- const coi = require('./saas/internal-api/coi');
24
- const compliance = require('./saas/internal-api/compliance');
25
- const auditNotes = require('./saas/internal-api/auditNotes');
26
- const auditCustomerRules = require('./saas/internal-api/auditCustomerRules');
27
-
28
- const users = require('./saas/internal-api/users');
29
-
30
- const reports = require('./saas/internal-api/reports');
31
- const charts = require('./saas/internal-api/homepageCharts');
32
- const dashboard = require('./saas/internal-api/dashboard');
33
-
34
- const globalRecord = require('./saas/internal-api/globalRecord');
35
- const vendorProfile = require('./saas/internal-api/vendorProfile');
36
- const serviceArea = require('./saas/internal-api/serviceArea');
37
-
38
- const requestsTable = require('./saas/internal-api/requestsTable');
39
-
40
- const threadScheduler = require('./saas/internal-api/thread-scheduler/runner');
41
- const dbEmails = require('./saas/internal-api/dbEmails/index');
42
- const agreement = require('./saas/internal-api/agreement/index');
43
- const uploadFile = require('./saas/internal-api/uploadFiles/index');
44
-
45
- const emailCustomization = require('./saas/internal-api/emailCustomization');
46
-
47
- const internalAPI = {
48
- defaults,
49
- auth,
50
- accounts,
51
- projects,
52
- tabs,
53
- requirements,
54
- contractors,
55
- requests,
56
- coi,
57
- compliance,
58
- auditNotes,
59
- auditCustomerRules,
60
- reports,
61
- users,
62
- charts,
63
- dashboard,
64
- globalRecord,
65
- vendorProfile,
66
- serviceArea,
67
- requestsTable,
68
- threadScheduler,
69
- dbEmails,
70
- emailCustomization,
71
- factory,
72
- agreement,
73
- uploadFile
74
- };
75
-
76
- return internalAPI;
77
- };
78
-
79
- const getOpenAPI = () => {
80
- const accounts = require('./saas/openapi/accounts/accounts.service');
81
- const projects = require('./saas/openapi/projects/projects.service');
82
- const tabs = require('./saas/openapi/tabs');
83
- const requirements = require('./saas/openapi/requirements');
84
- const requests = require('./saas/openapi/requests');
85
- const coi = require('./saas/openapi/coi/coi.service');
86
- const users = require('./saas/openapi/users/users.service');
87
- const openAPI = { accounts, projects, tabs, requirements, requests, coi, users };
88
- return openAPI;
89
- };
90
-
91
- module.exports = init;
1
+ const env = require('./env');
2
+ const init = conf => {
3
+ env.init(conf);
4
+ const internalAPI = getInternalAPI();
5
+ const openAPI = getOpenAPI();
6
+
7
+ return { internalAPI, openAPI };
8
+ };
9
+
10
+ const getInternalAPI = () => {
11
+ const factory = require('./factory');
12
+ const defaults = require('./defaults');
13
+ const auth = require('./saas/internal-api/auth');
14
+ const accounts = require('./saas/internal-api/accounts');
15
+
16
+ const projects = require('./saas/internal-api/projects');
17
+ const tabs = require('./saas/internal-api/tabs');
18
+
19
+ const requirements = require('./saas/internal-api/requirements');
20
+ const contractors = require('./saas/internal-api/contractors');
21
+ const requests = require('./saas/internal-api/requests');
22
+
23
+ const coi = require('./saas/internal-api/coi');
24
+ const compliance = require('./saas/internal-api/compliance');
25
+ const auditNotes = require('./saas/internal-api/auditNotes');
26
+ const auditCustomerRules = require('./saas/internal-api/auditCustomerRules');
27
+
28
+ const users = require('./saas/internal-api/users');
29
+
30
+ const reports = require('./saas/internal-api/reports');
31
+ const charts = require('./saas/internal-api/homepageCharts');
32
+ const dashboard = require('./saas/internal-api/dashboard');
33
+
34
+ const globalRecord = require('./saas/internal-api/globalRecord');
35
+ const vendorProfile = require('./saas/internal-api/vendorProfile');
36
+ const serviceArea = require('./saas/internal-api/serviceArea');
37
+
38
+ const requestsTable = require('./saas/internal-api/requestsTable');
39
+
40
+ const threadScheduler = require('./saas/internal-api/thread-scheduler/runner');
41
+ const dbEmails = require('./saas/internal-api/dbEmails/index');
42
+ const agreement = require('./saas/internal-api/agreement/index');
43
+ const uploadFile = require('./saas/internal-api/uploadFiles/index');
44
+
45
+ const emailCustomization = require('./saas/internal-api/emailCustomization');
46
+
47
+ const internalAPI = {
48
+ defaults,
49
+ auth,
50
+ accounts,
51
+ projects,
52
+ tabs,
53
+ requirements,
54
+ contractors,
55
+ requests,
56
+ coi,
57
+ compliance,
58
+ auditNotes,
59
+ auditCustomerRules,
60
+ reports,
61
+ users,
62
+ charts,
63
+ dashboard,
64
+ globalRecord,
65
+ vendorProfile,
66
+ serviceArea,
67
+ requestsTable,
68
+ threadScheduler,
69
+ dbEmails,
70
+ emailCustomization,
71
+ factory,
72
+ agreement,
73
+ uploadFile
74
+ };
75
+
76
+ return internalAPI;
77
+ };
78
+
79
+ const getOpenAPI = () => {
80
+ const accounts = require('./saas/openapi/accounts/accounts.service');
81
+ const projects = require('./saas/openapi/projects/projects.service');
82
+ const tabs = require('./saas/openapi/tabs');
83
+ const requirements = require('./saas/openapi/requirements');
84
+ const requests = require('./saas/openapi/requests');
85
+ const coi = require('./saas/openapi/coi/coi.service');
86
+ const users = require('./saas/openapi/users/users.service');
87
+ const openAPI = { accounts, projects, tabs, requirements, requests, coi, users };
88
+ return openAPI;
89
+ };
90
+
91
+ module.exports = init;
@@ -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
+ };