@budibase/server 2.3.14-alpha.0 → 2.3.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 (550) hide show
  1. package/__mocks__/aws-sdk.ts +1 -1
  2. package/builder/assets/{index.a534ca24.css → index.4488f38d.css} +1 -1
  3. package/builder/assets/{index.d7529be1.js → index.e88df740.js} +235 -235
  4. package/builder/index.html +2 -2
  5. package/coverage/clover.xml +6679 -11409
  6. package/coverage/coverage-final.json +271 -356
  7. package/coverage/lcov-report/index.html +195 -420
  8. package/coverage/lcov-report/src/api/controllers/analytics.ts.html +6 -6
  9. package/coverage/lcov-report/src/api/controllers/apikeys.ts.html +5 -5
  10. package/coverage/lcov-report/src/api/controllers/application.ts.html +140 -140
  11. package/coverage/lcov-report/src/api/controllers/auth.ts.html +9 -9
  12. package/coverage/lcov-report/src/api/controllers/automation.ts.html +47 -47
  13. package/coverage/lcov-report/src/api/controllers/backup.ts.html +6 -6
  14. package/coverage/lcov-report/src/api/controllers/cloud.ts.html +26 -26
  15. package/coverage/lcov-report/src/api/controllers/component.ts.html +5 -5
  16. package/coverage/lcov-report/src/api/controllers/datasource.ts.html +37 -37
  17. package/coverage/lcov-report/src/api/controllers/deploy/Deployment.ts.html +14 -14
  18. package/coverage/lcov-report/src/api/controllers/deploy/index.html +1 -1
  19. package/coverage/lcov-report/src/api/controllers/deploy/index.ts.html +81 -81
  20. package/coverage/lcov-report/src/api/controllers/dev.ts.html +26 -26
  21. package/coverage/lcov-report/src/api/controllers/index.html +37 -37
  22. package/coverage/lcov-report/src/api/controllers/integration.ts.html +4 -4
  23. package/coverage/lcov-report/src/api/controllers/layout.ts.html +15 -15
  24. package/coverage/lcov-report/src/api/controllers/metadata.ts.html +9 -9
  25. package/coverage/lcov-report/src/api/controllers/migrations.ts.html +4 -4
  26. package/coverage/lcov-report/src/api/controllers/permission.ts.html +34 -34
  27. package/coverage/lcov-report/src/api/controllers/plugin/file.ts.html +2 -2
  28. package/coverage/lcov-report/src/api/controllers/plugin/github.ts.html +4 -4
  29. package/coverage/lcov-report/src/api/controllers/plugin/index.html +1 -1
  30. package/coverage/lcov-report/src/api/controllers/plugin/index.ts.html +18 -18
  31. package/coverage/lcov-report/src/api/controllers/plugin/npm.ts.html +5 -5
  32. package/coverage/lcov-report/src/api/controllers/plugin/uploaders.ts.html +5 -5
  33. package/coverage/lcov-report/src/api/controllers/plugin/url.ts.html +3 -3
  34. package/coverage/lcov-report/src/api/controllers/plugin/utils.ts.html +3 -3
  35. package/coverage/lcov-report/src/api/controllers/public/applications.ts.html +6 -6
  36. package/coverage/lcov-report/src/api/controllers/public/index.html +1 -1
  37. package/coverage/lcov-report/src/api/controllers/public/mapping/applications.ts.html +2 -2
  38. package/coverage/lcov-report/src/api/controllers/public/mapping/index.html +1 -1
  39. package/coverage/lcov-report/src/api/controllers/public/mapping/index.ts.html +7 -7
  40. package/coverage/lcov-report/src/api/controllers/public/mapping/queries.ts.html +2 -2
  41. package/coverage/lcov-report/src/api/controllers/public/mapping/rows.ts.html +2 -2
  42. package/coverage/lcov-report/src/api/controllers/public/mapping/tables.ts.html +2 -2
  43. package/coverage/lcov-report/src/api/controllers/public/mapping/users.ts.html +2 -2
  44. package/coverage/lcov-report/src/api/controllers/public/queries.ts.html +4 -4
  45. package/coverage/lcov-report/src/api/controllers/public/rows.ts.html +5 -5
  46. package/coverage/lcov-report/src/api/controllers/public/tables.ts.html +4 -4
  47. package/coverage/lcov-report/src/api/controllers/public/users.ts.html +6 -6
  48. package/coverage/lcov-report/src/api/controllers/public/utils.ts.html +4 -4
  49. package/coverage/lcov-report/src/api/controllers/query/import/index.html +1 -1
  50. package/coverage/lcov-report/src/api/controllers/query/import/index.ts.html +7 -7
  51. package/coverage/lcov-report/src/api/controllers/query/import/sources/base/index.html +1 -1
  52. package/coverage/lcov-report/src/api/controllers/query/import/sources/base/index.ts.html +3 -3
  53. package/coverage/lcov-report/src/api/controllers/query/import/sources/base/openapi.ts.html +5 -5
  54. package/coverage/lcov-report/src/api/controllers/query/import/sources/curl.ts.html +7 -7
  55. package/coverage/lcov-report/src/api/controllers/query/import/sources/index.html +1 -1
  56. package/coverage/lcov-report/src/api/controllers/query/import/sources/openapi2.ts.html +9 -9
  57. package/coverage/lcov-report/src/api/controllers/query/import/sources/openapi3.ts.html +13 -13
  58. package/coverage/lcov-report/src/api/controllers/query/index.html +10 -10
  59. package/coverage/lcov-report/src/api/controllers/query/index.ts.html +55 -61
  60. package/coverage/lcov-report/src/api/controllers/query/validation.ts.html +9 -9
  61. package/coverage/lcov-report/src/api/controllers/role.ts.html +8 -8
  62. package/coverage/lcov-report/src/api/controllers/routing.ts.html +6 -6
  63. package/coverage/lcov-report/src/api/controllers/row/ExternalRequest.ts.html +419 -431
  64. package/coverage/lcov-report/src/api/controllers/row/external.ts.html +175 -211
  65. package/coverage/lcov-report/src/api/controllers/row/index.html +42 -42
  66. package/coverage/lcov-report/src/api/controllers/row/index.ts.html +79 -79
  67. package/coverage/lcov-report/src/api/controllers/row/internal.ts.html +34 -34
  68. package/coverage/lcov-report/src/api/controllers/row/internalSearch.ts.html +6 -6
  69. package/coverage/lcov-report/src/api/controllers/row/staticFormula.ts.html +22 -22
  70. package/coverage/lcov-report/src/api/controllers/row/utils.ts.html +31 -31
  71. package/coverage/lcov-report/src/api/controllers/screen.ts.html +26 -26
  72. package/coverage/lcov-report/src/api/controllers/script.ts.html +2 -2
  73. package/coverage/lcov-report/src/api/controllers/static/index.html +1 -1
  74. package/coverage/lcov-report/src/api/controllers/static/index.ts.html +22 -22
  75. package/coverage/lcov-report/src/api/controllers/table/bulkFormula.ts.html +51 -51
  76. package/coverage/lcov-report/src/api/controllers/table/external.ts.html +195 -198
  77. package/coverage/lcov-report/src/api/controllers/table/index.html +47 -47
  78. package/coverage/lcov-report/src/api/controllers/table/index.ts.html +42 -42
  79. package/coverage/lcov-report/src/api/controllers/table/internal.ts.html +61 -61
  80. package/coverage/lcov-report/src/api/controllers/table/utils.ts.html +63 -63
  81. package/coverage/lcov-report/src/api/controllers/templates.ts.html +7 -7
  82. package/coverage/lcov-report/src/api/controllers/user.ts.html +28 -28
  83. package/coverage/lcov-report/src/api/controllers/view/exporters.ts.html +2 -2
  84. package/coverage/lcov-report/src/api/controllers/view/index.html +1 -1
  85. package/coverage/lcov-report/src/api/controllers/view/index.ts.html +16 -16
  86. package/coverage/lcov-report/src/api/controllers/view/utils.ts.html +5 -5
  87. package/coverage/lcov-report/src/api/controllers/view/viewBuilder.ts.html +7 -7
  88. package/coverage/lcov-report/src/api/controllers/webhook.ts.html +25 -25
  89. package/coverage/lcov-report/src/api/index.html +1 -1
  90. package/coverage/lcov-report/src/api/index.ts.html +27 -27
  91. package/coverage/lcov-report/src/api/routes/analytics.ts.html +7 -7
  92. package/coverage/lcov-report/src/api/routes/apikeys.ts.html +8 -8
  93. package/coverage/lcov-report/src/api/routes/application.ts.html +10 -10
  94. package/coverage/lcov-report/src/api/routes/auth.ts.html +6 -6
  95. package/coverage/lcov-report/src/api/routes/automation.ts.html +11 -11
  96. package/coverage/lcov-report/src/api/routes/backup.ts.html +8 -8
  97. package/coverage/lcov-report/src/api/routes/cloud.ts.html +8 -8
  98. package/coverage/lcov-report/src/api/routes/component.ts.html +8 -8
  99. package/coverage/lcov-report/src/api/routes/datasource.ts.html +9 -9
  100. package/coverage/lcov-report/src/api/routes/deploy.ts.html +8 -8
  101. package/coverage/lcov-report/src/api/routes/dev.ts.html +13 -13
  102. package/coverage/lcov-report/src/api/routes/index.html +1 -1
  103. package/coverage/lcov-report/src/api/routes/index.ts.html +35 -35
  104. package/coverage/lcov-report/src/api/routes/integration.ts.html +8 -8
  105. package/coverage/lcov-report/src/api/routes/layout.ts.html +8 -8
  106. package/coverage/lcov-report/src/api/routes/metadata.ts.html +9 -9
  107. package/coverage/lcov-report/src/api/routes/migrations.ts.html +7 -7
  108. package/coverage/lcov-report/src/api/routes/permission.ts.html +9 -9
  109. package/coverage/lcov-report/src/api/routes/plugin.ts.html +8 -8
  110. package/coverage/lcov-report/src/api/routes/public/applications.ts.html +17 -14
  111. package/coverage/lcov-report/src/api/routes/public/index.html +1 -1
  112. package/coverage/lcov-report/src/api/routes/public/index.ts.html +52 -52
  113. package/coverage/lcov-report/src/api/routes/public/middleware/index.html +1 -1
  114. package/coverage/lcov-report/src/api/routes/public/middleware/mapper.ts.html +4 -4
  115. package/coverage/lcov-report/src/api/routes/public/queries.ts.html +9 -9
  116. package/coverage/lcov-report/src/api/routes/public/rows.ts.html +12 -12
  117. package/coverage/lcov-report/src/api/routes/public/tables.ts.html +12 -12
  118. package/coverage/lcov-report/src/api/routes/public/tests/index.html +12 -42
  119. package/coverage/lcov-report/src/api/routes/public/tests/utils.ts.html +27 -78
  120. package/coverage/lcov-report/src/api/routes/public/users.ts.html +12 -12
  121. package/coverage/lcov-report/src/api/routes/public/utils/Endpoint.ts.html +19 -19
  122. package/coverage/lcov-report/src/api/routes/public/utils/index.html +1 -1
  123. package/coverage/lcov-report/src/api/routes/query.ts.html +11 -11
  124. package/coverage/lcov-report/src/api/routes/role.ts.html +9 -9
  125. package/coverage/lcov-report/src/api/routes/routing.ts.html +8 -8
  126. package/coverage/lcov-report/src/api/routes/row.ts.html +11 -11
  127. package/coverage/lcov-report/src/api/routes/screen.ts.html +9 -9
  128. package/coverage/lcov-report/src/api/routes/script.ts.html +1 -1
  129. package/coverage/lcov-report/src/api/routes/static.ts.html +14 -14
  130. package/coverage/lcov-report/src/api/routes/table.ts.html +11 -11
  131. package/coverage/lcov-report/src/api/routes/templates.ts.html +8 -8
  132. package/coverage/lcov-report/src/api/routes/tests/utilities/TestFunctions.ts.html +41 -110
  133. package/coverage/lcov-report/src/api/routes/tests/utilities/index.html +19 -19
  134. package/coverage/lcov-report/src/api/routes/tests/utilities/index.ts.html +23 -29
  135. package/coverage/lcov-report/src/api/routes/user.ts.html +9 -9
  136. package/coverage/lcov-report/src/api/routes/utils/index.html +1 -1
  137. package/coverage/lcov-report/src/api/routes/utils/validators.ts.html +42 -42
  138. package/coverage/lcov-report/src/api/routes/view.ts.html +10 -10
  139. package/coverage/lcov-report/src/api/routes/webhook.ts.html +10 -10
  140. package/coverage/lcov-report/src/app.ts.html +37 -40
  141. package/coverage/lcov-report/src/automations/actions.ts.html +24 -24
  142. package/coverage/lcov-report/src/automations/automationUtils.ts.html +4 -4
  143. package/coverage/lcov-report/src/automations/bullboard.ts.html +9 -9
  144. package/coverage/lcov-report/src/automations/index.html +27 -27
  145. package/coverage/lcov-report/src/automations/index.ts.html +5 -5
  146. package/coverage/lcov-report/src/automations/logging/index.html +1 -1
  147. package/coverage/lcov-report/src/automations/logging/index.ts.html +10 -10
  148. package/coverage/lcov-report/src/automations/steps/bash.ts.html +8 -8
  149. package/coverage/lcov-report/src/automations/steps/createRow.ts.html +7 -7
  150. package/coverage/lcov-report/src/automations/steps/delay.ts.html +5 -5
  151. package/coverage/lcov-report/src/automations/steps/deleteRow.ts.html +7 -7
  152. package/coverage/lcov-report/src/automations/steps/discord.ts.html +8 -8
  153. package/coverage/lcov-report/src/automations/steps/executeQuery.ts.html +7 -7
  154. package/coverage/lcov-report/src/automations/steps/executeScript.ts.html +7 -7
  155. package/coverage/lcov-report/src/automations/steps/filter.ts.html +6 -6
  156. package/coverage/lcov-report/src/automations/steps/index.html +1 -1
  157. package/coverage/lcov-report/src/automations/steps/integromat.ts.html +6 -6
  158. package/coverage/lcov-report/src/automations/steps/loop.ts.html +3 -3
  159. package/coverage/lcov-report/src/automations/steps/outgoingWebhook.ts.html +9 -9
  160. package/coverage/lcov-report/src/automations/steps/queryRows.ts.html +13 -13
  161. package/coverage/lcov-report/src/automations/steps/sendSmtpEmail.ts.html +6 -6
  162. package/coverage/lcov-report/src/automations/steps/serverLog.ts.html +4 -4
  163. package/coverage/lcov-report/src/automations/steps/slack.ts.html +6 -6
  164. package/coverage/lcov-report/src/automations/steps/updateRow.ts.html +7 -7
  165. package/coverage/lcov-report/src/automations/steps/utils.ts.html +1 -1
  166. package/coverage/lcov-report/src/automations/steps/zapier.ts.html +6 -6
  167. package/coverage/lcov-report/src/automations/tests/utilities/index.html +1 -1
  168. package/coverage/lcov-report/src/automations/tests/utilities/index.ts.html +1 -1
  169. package/coverage/lcov-report/src/automations/triggerInfo/app.ts.html +3 -3
  170. package/coverage/lcov-report/src/automations/triggerInfo/cron.ts.html +3 -3
  171. package/coverage/lcov-report/src/automations/triggerInfo/index.html +1 -1
  172. package/coverage/lcov-report/src/automations/triggerInfo/index.ts.html +8 -8
  173. package/coverage/lcov-report/src/automations/triggerInfo/rowDeleted.ts.html +3 -3
  174. package/coverage/lcov-report/src/automations/triggerInfo/rowSaved.ts.html +3 -3
  175. package/coverage/lcov-report/src/automations/triggerInfo/rowUpdated.ts.html +3 -3
  176. package/coverage/lcov-report/src/automations/triggerInfo/webhook.ts.html +3 -3
  177. package/coverage/lcov-report/src/automations/triggers.ts.html +44 -44
  178. package/coverage/lcov-report/src/automations/utils.ts.html +63 -63
  179. package/coverage/lcov-report/src/constants/index.html +16 -16
  180. package/coverage/lcov-report/src/constants/index.ts.html +99 -33
  181. package/coverage/lcov-report/src/constants/layouts.ts.html +4 -4
  182. package/coverage/lcov-report/src/constants/screens.ts.html +5 -5
  183. package/coverage/lcov-report/src/db/defaultData/datasource_bb_default.ts.html +45 -33
  184. package/coverage/lcov-report/src/db/defaultData/employeeImport.ts.html +2 -2
  185. package/coverage/lcov-report/src/db/defaultData/expensesImport.ts.html +2 -2
  186. package/coverage/lcov-report/src/db/defaultData/index.html +11 -11
  187. package/coverage/lcov-report/src/db/defaultData/inventoryImport.ts.html +2 -2
  188. package/coverage/lcov-report/src/db/defaultData/jobsImport.ts.html +2 -2
  189. package/coverage/lcov-report/src/db/dynamoClient.ts.html +15 -15
  190. package/coverage/lcov-report/src/db/inMemoryView.ts.html +4 -4
  191. package/coverage/lcov-report/src/db/index.html +16 -16
  192. package/coverage/lcov-report/src/db/index.ts.html +19 -19
  193. package/coverage/lcov-report/src/db/linkedRows/LinkController.ts.html +23 -26
  194. package/coverage/lcov-report/src/db/linkedRows/LinkDocument.ts.html +4 -4
  195. package/coverage/lcov-report/src/db/linkedRows/index.html +10 -10
  196. package/coverage/lcov-report/src/db/linkedRows/index.ts.html +23 -23
  197. package/coverage/lcov-report/src/db/linkedRows/linkUtils.ts.html +10 -10
  198. package/coverage/lcov-report/src/db/newid.ts.html +4 -4
  199. package/coverage/lcov-report/src/db/utils.ts.html +52 -52
  200. package/coverage/lcov-report/src/definitions/automations.ts.html +2 -2
  201. package/coverage/lcov-report/src/definitions/index.html +1 -1
  202. package/coverage/lcov-report/src/environment.ts.html +31 -31
  203. package/coverage/lcov-report/src/events/AutomationEmitter.ts.html +6 -6
  204. package/coverage/lcov-report/src/events/BudibaseEmitter.ts.html +6 -6
  205. package/coverage/lcov-report/src/events/index.html +1 -1
  206. package/coverage/lcov-report/src/events/index.ts.html +4 -4
  207. package/coverage/lcov-report/src/events/utils.ts.html +10 -10
  208. package/coverage/lcov-report/src/index.html +16 -16
  209. package/coverage/lcov-report/src/index.ts.html +1 -1
  210. package/coverage/lcov-report/src/integrations/airtable.ts.html +5 -5
  211. package/coverage/lcov-report/src/integrations/arangodb.ts.html +5 -5
  212. package/coverage/lcov-report/src/integrations/base/index.html +30 -30
  213. package/coverage/lcov-report/src/integrations/base/query.ts.html +9 -9
  214. package/coverage/lcov-report/src/integrations/base/sql.ts.html +223 -214
  215. package/coverage/lcov-report/src/integrations/base/sqlTable.ts.html +107 -107
  216. package/coverage/lcov-report/src/integrations/base/utils.ts.html +5 -5
  217. package/coverage/lcov-report/src/integrations/couchdb.ts.html +5 -5
  218. package/coverage/lcov-report/src/integrations/dynamodb.ts.html +6 -6
  219. package/coverage/lcov-report/src/integrations/elasticsearch.ts.html +5 -5
  220. package/coverage/lcov-report/src/integrations/firebase.ts.html +5 -5
  221. package/coverage/lcov-report/src/integrations/googlesheets.ts.html +11 -11
  222. package/coverage/lcov-report/src/integrations/index.html +27 -27
  223. package/coverage/lcov-report/src/integrations/index.ts.html +40 -40
  224. package/coverage/lcov-report/src/integrations/microsoftSqlServer.ts.html +8 -8
  225. package/coverage/lcov-report/src/integrations/mongodb.ts.html +11 -11
  226. package/coverage/lcov-report/src/integrations/mysql.ts.html +10 -10
  227. package/coverage/lcov-report/src/integrations/oracle.ts.html +14 -14
  228. package/coverage/lcov-report/src/integrations/postgres.ts.html +68 -68
  229. package/coverage/lcov-report/src/integrations/queries/index.html +1 -1
  230. package/coverage/lcov-report/src/integrations/queries/sql.ts.html +8 -8
  231. package/coverage/lcov-report/src/integrations/redis.ts.html +5 -5
  232. package/coverage/lcov-report/src/integrations/rest.ts.html +15 -15
  233. package/coverage/lcov-report/src/integrations/s3.ts.html +6 -6
  234. package/coverage/lcov-report/src/integrations/snowflake.ts.html +5 -5
  235. package/coverage/lcov-report/src/integrations/tests/TestConfiguration.js.html +1 -1
  236. package/coverage/lcov-report/src/integrations/tests/index.html +5 -230
  237. package/coverage/lcov-report/src/integrations/utils.ts.html +77 -77
  238. package/coverage/lcov-report/src/middleware/appInfo.ts.html +5 -5
  239. package/coverage/lcov-report/src/middleware/authorized.ts.html +29 -29
  240. package/coverage/lcov-report/src/middleware/builder.ts.html +17 -17
  241. package/coverage/lcov-report/src/middleware/currentapp.ts.html +53 -53
  242. package/coverage/lcov-report/src/middleware/index.html +15 -15
  243. package/coverage/lcov-report/src/middleware/joi-validator.ts.html +1 -1
  244. package/coverage/lcov-report/src/middleware/publicApi.ts.html +4 -4
  245. package/coverage/lcov-report/src/middleware/resourceId.ts.html +28 -28
  246. package/coverage/lcov-report/src/middleware/selfhost.ts.html +1 -1
  247. package/coverage/lcov-report/src/middleware/utils.ts.html +4 -4
  248. package/coverage/lcov-report/src/migrations/functions/appUrls.ts.html +4 -4
  249. package/coverage/lcov-report/src/migrations/functions/backfill/app/automations.ts.html +5 -5
  250. package/coverage/lcov-report/src/migrations/functions/backfill/app/datasources.ts.html +5 -5
  251. package/coverage/lcov-report/src/migrations/functions/backfill/app/index.html +1 -1
  252. package/coverage/lcov-report/src/migrations/functions/backfill/app/layouts.ts.html +5 -5
  253. package/coverage/lcov-report/src/migrations/functions/backfill/app/queries.ts.html +7 -7
  254. package/coverage/lcov-report/src/migrations/functions/backfill/app/roles.ts.html +5 -5
  255. package/coverage/lcov-report/src/migrations/functions/backfill/app/screens.ts.html +5 -5
  256. package/coverage/lcov-report/src/migrations/functions/backfill/app/tables.ts.html +4 -4
  257. package/coverage/lcov-report/src/migrations/functions/backfill/app.ts.html +19 -19
  258. package/coverage/lcov-report/src/migrations/functions/backfill/global/configs.ts.html +6 -6
  259. package/coverage/lcov-report/src/migrations/functions/backfill/global/index.html +1 -1
  260. package/coverage/lcov-report/src/migrations/functions/backfill/global/quotas.ts.html +7 -7
  261. package/coverage/lcov-report/src/migrations/functions/backfill/global/users.ts.html +6 -6
  262. package/coverage/lcov-report/src/migrations/functions/backfill/global.ts.html +15 -15
  263. package/coverage/lcov-report/src/migrations/functions/backfill/index.html +1 -1
  264. package/coverage/lcov-report/src/migrations/functions/backfill/index.ts.html +5 -5
  265. package/coverage/lcov-report/src/migrations/functions/backfill/installation.ts.html +8 -8
  266. package/coverage/lcov-report/src/migrations/functions/index.html +1 -1
  267. package/coverage/lcov-report/src/migrations/functions/syncQuotas.ts.html +6 -6
  268. package/coverage/lcov-report/src/migrations/functions/tableSettings.ts.html +6 -6
  269. package/coverage/lcov-report/src/migrations/functions/usageQuotas/index.html +1 -1
  270. package/coverage/lcov-report/src/migrations/functions/usageQuotas/index.ts.html +2 -2
  271. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncApps.ts.html +5 -5
  272. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncPlugins.ts.html +4 -4
  273. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncRows.ts.html +6 -6
  274. package/coverage/lcov-report/src/migrations/functions/userEmailViewCasing.ts.html +3 -3
  275. package/coverage/lcov-report/src/migrations/index.html +1 -1
  276. package/coverage/lcov-report/src/migrations/index.ts.html +32 -32
  277. package/coverage/lcov-report/src/migrations/tests/helpers.ts.html +1 -1
  278. package/coverage/lcov-report/src/migrations/tests/index.html +8 -23
  279. package/coverage/lcov-report/src/migrations/tests/structures.ts.html +1 -1
  280. package/coverage/lcov-report/src/sdk/app/applications/index.html +1 -1
  281. package/coverage/lcov-report/src/sdk/app/applications/index.ts.html +4 -4
  282. package/coverage/lcov-report/src/sdk/app/applications/sync.ts.html +22 -22
  283. package/coverage/lcov-report/src/sdk/app/applications/utils.ts.html +9 -9
  284. package/coverage/lcov-report/src/sdk/app/automations/index.html +1 -1
  285. package/coverage/lcov-report/src/sdk/app/automations/index.ts.html +3 -3
  286. package/coverage/lcov-report/src/sdk/app/automations/webhook.ts.html +10 -10
  287. package/coverage/lcov-report/src/sdk/app/backups/constants.ts.html +3 -3
  288. package/coverage/lcov-report/src/sdk/app/backups/exports.ts.html +23 -41
  289. package/coverage/lcov-report/src/sdk/app/backups/imports.ts.html +18 -18
  290. package/coverage/lcov-report/src/sdk/app/backups/index.html +10 -10
  291. package/coverage/lcov-report/src/sdk/app/backups/index.ts.html +5 -5
  292. package/coverage/lcov-report/src/sdk/app/backups/statistics.ts.html +7 -7
  293. package/coverage/lcov-report/src/sdk/app/datasources/datasources.ts.html +60 -69
  294. package/coverage/lcov-report/src/sdk/app/datasources/index.html +19 -19
  295. package/coverage/lcov-report/src/sdk/app/datasources/index.ts.html +3 -3
  296. package/coverage/lcov-report/src/sdk/app/queries/index.html +1 -1
  297. package/coverage/lcov-report/src/sdk/app/queries/index.ts.html +3 -3
  298. package/coverage/lcov-report/src/sdk/app/queries/queries.ts.html +11 -11
  299. package/coverage/lcov-report/src/sdk/app/rows/attachments.ts.html +6 -6
  300. package/coverage/lcov-report/src/sdk/app/rows/index.html +1 -1
  301. package/coverage/lcov-report/src/sdk/app/rows/index.ts.html +4 -4
  302. package/coverage/lcov-report/src/sdk/app/rows/rows.ts.html +4 -4
  303. package/coverage/lcov-report/src/sdk/app/tables/index.html +1 -1
  304. package/coverage/lcov-report/src/sdk/app/tables/index.ts.html +10 -10
  305. package/coverage/lcov-report/src/sdk/index.html +1 -1
  306. package/coverage/lcov-report/src/sdk/index.ts.html +11 -11
  307. package/coverage/lcov-report/src/sdk/users/index.html +1 -1
  308. package/coverage/lcov-report/src/sdk/users/index.ts.html +3 -3
  309. package/coverage/lcov-report/src/sdk/users/utils.ts.html +31 -31
  310. package/coverage/lcov-report/src/sdk/utils/index.html +1 -1
  311. package/coverage/lcov-report/src/sdk/utils/index.ts.html +11 -11
  312. package/coverage/lcov-report/src/startup.ts.html +42 -42
  313. package/coverage/lcov-report/src/tests/utilities/TestConfiguration.ts.html +193 -421
  314. package/coverage/lcov-report/src/tests/utilities/controllers.ts.html +15 -15
  315. package/coverage/lcov-report/src/tests/utilities/index.html +28 -28
  316. package/coverage/lcov-report/src/tests/utilities/index.ts.html +1 -1
  317. package/coverage/lcov-report/src/tests/utilities/structures.ts.html +35 -77
  318. package/coverage/lcov-report/src/threads/automation.ts.html +22 -22
  319. package/coverage/lcov-report/src/threads/index.html +1 -1
  320. package/coverage/lcov-report/src/threads/index.ts.html +24 -24
  321. package/coverage/lcov-report/src/threads/query.ts.html +76 -76
  322. package/coverage/lcov-report/src/threads/utils.ts.html +12 -12
  323. package/coverage/lcov-report/src/utilities/budibaseDir.ts.html +3 -3
  324. package/coverage/lcov-report/src/utilities/centralPath.ts.html +2 -2
  325. package/coverage/lcov-report/src/utilities/fileSystem/app.ts.html +17 -17
  326. package/coverage/lcov-report/src/utilities/fileSystem/clientLibrary.ts.html +8 -8
  327. package/coverage/lcov-report/src/utilities/fileSystem/filesystem.ts.html +25 -25
  328. package/coverage/lcov-report/src/utilities/fileSystem/index.html +1 -1
  329. package/coverage/lcov-report/src/utilities/fileSystem/index.ts.html +6 -6
  330. package/coverage/lcov-report/src/utilities/fileSystem/plugin.ts.html +8 -8
  331. package/coverage/lcov-report/src/utilities/fileSystem/processor.ts.html +1 -1
  332. package/coverage/lcov-report/src/utilities/fileSystem/template.ts.html +7 -7
  333. package/coverage/lcov-report/src/utilities/global.ts.html +40 -40
  334. package/coverage/lcov-report/src/utilities/index.html +19 -34
  335. package/coverage/lcov-report/src/utilities/index.ts.html +26 -26
  336. package/coverage/lcov-report/src/utilities/redis.ts.html +12 -12
  337. package/coverage/lcov-report/src/utilities/routing/index.html +1 -1
  338. package/coverage/lcov-report/src/utilities/routing/index.ts.html +4 -4
  339. package/coverage/lcov-report/src/utilities/rowProcessor/index.html +19 -19
  340. package/coverage/lcov-report/src/utilities/rowProcessor/index.ts.html +49 -49
  341. package/coverage/lcov-report/src/utilities/rowProcessor/map.ts.html +3 -3
  342. package/coverage/lcov-report/src/utilities/rowProcessor/utils.ts.html +38 -38
  343. package/coverage/lcov-report/src/utilities/schema.ts.html +3 -3
  344. package/coverage/lcov-report/src/utilities/scriptRunner.ts.html +5 -5
  345. package/coverage/lcov-report/src/utilities/security.ts.html +22 -22
  346. package/coverage/lcov-report/src/utilities/usageQuota/index.html +1 -1
  347. package/coverage/lcov-report/src/utilities/usageQuota/rows.ts.html +35 -35
  348. package/coverage/lcov-report/src/utilities/usageQuota/usageQuoteReset.ts.html +1 -1
  349. package/coverage/lcov-report/src/utilities/users.ts.html +4 -4
  350. package/coverage/lcov-report/src/utilities/workerRequests.ts.html +15 -15
  351. package/coverage/lcov-report/src/watch.ts.html +7 -7
  352. package/coverage/lcov-report/src/websocket.ts.html +5 -5
  353. package/coverage/lcov.info +12121 -19834
  354. package/dist/api/controllers/query/index.js +0 -2
  355. package/dist/api/controllers/row/ExternalRequest.js +2 -4
  356. package/dist/api/controllers/row/external.js +1 -12
  357. package/dist/api/controllers/table/external.js +8 -8
  358. package/dist/api/routes/public/tests/utils.js +2 -29
  359. package/dist/app.js +1 -1
  360. package/dist/constants/index.js +24 -4
  361. package/dist/db/defaultData/datasource_bb_default.js +5 -6
  362. package/dist/db/linkedRows/LinkController.js +8 -9
  363. package/dist/integrations/base/sql.js +14 -10
  364. package/dist/package.json +6 -8
  365. package/dist/sdk/app/backups/exports.js +2 -8
  366. package/dist/sdk/app/datasources/datasources.js +0 -3
  367. package/dist/tsconfig.build.tsbuildinfo +1 -1
  368. package/jest.config.ts +11 -28
  369. package/package.json +7 -9
  370. package/specs/openapi.json +6 -6
  371. package/specs/openapi.yaml +3 -3
  372. package/src/api/controllers/query/import/tests/index.spec.js +1 -1
  373. package/src/api/controllers/query/index.ts +0 -2
  374. package/src/api/controllers/row/ExternalRequest.ts +2 -6
  375. package/src/api/controllers/row/external.ts +1 -13
  376. package/src/api/controllers/table/external.ts +2 -3
  377. package/src/api/routes/public/applications.ts +1 -0
  378. package/src/api/routes/public/tests/compare.spec.js +1 -1
  379. package/src/api/routes/public/tests/users.spec.js +1 -1
  380. package/src/api/routes/public/tests/utils.ts +8 -25
  381. package/src/api/routes/tests/__snapshots__/datasource.spec.ts.snap +1 -1
  382. package/src/api/routes/tests/analytics.spec.js +1 -4
  383. package/src/api/routes/tests/apikeys.spec.js +1 -1
  384. package/src/api/routes/tests/application.spec.ts +6 -20
  385. package/src/api/routes/tests/auth.spec.js +2 -2
  386. package/src/api/routes/tests/automation.spec.js +2 -6
  387. package/src/api/routes/tests/backup.spec.ts +13 -4
  388. package/src/api/routes/tests/{cloud.seq.spec.ts → cloud.spec.ts} +15 -11
  389. package/src/api/routes/tests/component.spec.js +1 -1
  390. package/src/api/routes/tests/datasource.spec.ts +3 -20
  391. package/src/api/routes/tests/dev.spec.js +1 -1
  392. package/src/api/routes/tests/integration.spec.js +1 -1
  393. package/src/api/routes/tests/layout.spec.js +1 -1
  394. package/src/api/routes/tests/metadata.spec.js +1 -1
  395. package/src/api/routes/tests/misc.spec.js +1 -1
  396. package/src/api/routes/tests/permissions.spec.js +1 -4
  397. package/src/api/routes/tests/{query.seq.spec.js → query.spec.js} +1 -22
  398. package/src/api/routes/tests/role.spec.js +1 -6
  399. package/src/api/routes/tests/routing.spec.js +1 -1
  400. package/src/api/routes/tests/row.spec.js +3 -11
  401. package/src/api/routes/tests/screen.spec.js +1 -1
  402. package/src/api/routes/tests/static.spec.js +1 -2
  403. package/src/api/routes/tests/table.spec.js +1 -1
  404. package/src/api/routes/tests/templates.spec.js +1 -1
  405. package/src/api/routes/tests/user.spec.js +12 -12
  406. package/src/api/routes/tests/utilities/TestFunctions.ts +2 -25
  407. package/src/api/routes/tests/utilities/index.ts +3 -5
  408. package/src/api/routes/tests/view.spec.js +1 -4
  409. package/src/api/routes/tests/webhook.spec.js +2 -11
  410. package/src/app.ts +1 -2
  411. package/src/automations/tests/automation.spec.js +4 -4
  412. package/src/automations/tests/bash.spec.js +1 -1
  413. package/src/automations/tests/discord.spec.js +1 -1
  414. package/src/automations/tests/executeQuery.spec.js +3 -2
  415. package/src/automations/tests/executeScript.spec.js +1 -1
  416. package/src/automations/tests/outgoingWebhook.spec.js +1 -1
  417. package/src/automations/tests/sendSmtpEmail.spec.js +1 -1
  418. package/src/automations/tests/serverLog.spec.js +1 -1
  419. package/src/automations/tests/updateRow.spec.js +1 -1
  420. package/src/automations/tests/zapier.spec.js +1 -1
  421. package/src/constants/index.ts +23 -1
  422. package/src/db/defaultData/datasource_bb_default.ts +10 -6
  423. package/src/db/linkedRows/LinkController.ts +1 -2
  424. package/src/db/tests/linkController.spec.js +1 -4
  425. package/src/db/tests/linkTests.spec.js +1 -1
  426. package/src/integrations/base/sql.ts +18 -15
  427. package/src/integrations/oracle.ts +1 -1
  428. package/src/integrations/tests/sql.spec.ts +38 -0
  429. package/src/migrations/functions/tests/appUrls.spec.js +1 -1
  430. package/src/migrations/functions/tests/syncQuotas.spec.js +1 -1
  431. package/src/migrations/functions/tests/userEmailViewCasing.spec.js +1 -1
  432. package/src/migrations/tests/index.spec.ts +20 -13
  433. package/src/sdk/app/backups/exports.ts +2 -8
  434. package/src/sdk/app/datasources/datasources.ts +0 -3
  435. package/src/tests/jestEnv.ts +6 -2
  436. package/src/tests/jestSetup.ts +7 -8
  437. package/src/tests/utilities/TestConfiguration.ts +50 -126
  438. package/src/tests/utilities/structures.ts +2 -16
  439. package/coverage/lcov-report/src/api/controllers/query/import/sources/tests/curl/curl.spec.js.html +0 -391
  440. package/coverage/lcov-report/src/api/controllers/query/import/sources/tests/curl/index.html +0 -116
  441. package/coverage/lcov-report/src/api/controllers/query/import/sources/tests/openapi2/index.html +0 -116
  442. package/coverage/lcov-report/src/api/controllers/query/import/sources/tests/openapi2/openapi2.spec.js.html +0 -796
  443. package/coverage/lcov-report/src/api/controllers/query/import/sources/tests/openapi3/index.html +0 -116
  444. package/coverage/lcov-report/src/api/controllers/query/import/sources/tests/openapi3/openapi3.spec.js.html +0 -805
  445. package/coverage/lcov-report/src/api/controllers/query/import/tests/index.html +0 -116
  446. package/coverage/lcov-report/src/api/controllers/query/import/tests/index.spec.js.html +0 -568
  447. package/coverage/lcov-report/src/api/controllers/view/tests/index.html +0 -116
  448. package/coverage/lcov-report/src/api/controllers/view/tests/viewBuilder.spec.js.html +0 -277
  449. package/coverage/lcov-report/src/api/routes/public/tests/compare.spec.js.html +0 -583
  450. package/coverage/lcov-report/src/api/routes/public/tests/users.spec.js.html +0 -199
  451. package/coverage/lcov-report/src/api/routes/tests/analytics.spec.js.html +0 -271
  452. package/coverage/lcov-report/src/api/routes/tests/apikeys.spec.js.html +0 -259
  453. package/coverage/lcov-report/src/api/routes/tests/application.spec.ts.html +0 -1066
  454. package/coverage/lcov-report/src/api/routes/tests/auth.spec.js.html +0 -154
  455. package/coverage/lcov-report/src/api/routes/tests/automation.spec.js.html +0 -1123
  456. package/coverage/lcov-report/src/api/routes/tests/backup.spec.ts.html +0 -223
  457. package/coverage/lcov-report/src/api/routes/tests/cloud.seq.spec.ts.html +0 -268
  458. package/coverage/lcov-report/src/api/routes/tests/component.spec.js.html +0 -178
  459. package/coverage/lcov-report/src/api/routes/tests/datasource.spec.ts.html +0 -799
  460. package/coverage/lcov-report/src/api/routes/tests/dev.spec.js.html +0 -202
  461. package/coverage/lcov-report/src/api/routes/tests/environmentVariables.spec.ts.html +0 -517
  462. package/coverage/lcov-report/src/api/routes/tests/index.html +0 -536
  463. package/coverage/lcov-report/src/api/routes/tests/integration.spec.js.html +0 -238
  464. package/coverage/lcov-report/src/api/routes/tests/internalSearch.spec.js.html +0 -670
  465. package/coverage/lcov-report/src/api/routes/tests/layout.spec.js.html +0 -259
  466. package/coverage/lcov-report/src/api/routes/tests/metadata.spec.js.html +0 -280
  467. package/coverage/lcov-report/src/api/routes/tests/misc.spec.js.html +0 -358
  468. package/coverage/lcov-report/src/api/routes/tests/permissions.spec.js.html +0 -484
  469. package/coverage/lcov-report/src/api/routes/tests/plugin.spec.ts.html +0 -622
  470. package/coverage/lcov-report/src/api/routes/tests/query.seq.spec.js.html +0 -1699
  471. package/coverage/lcov-report/src/api/routes/tests/role.spec.js.html +0 -478
  472. package/coverage/lcov-report/src/api/routes/tests/routing.spec.js.html +0 -430
  473. package/coverage/lcov-report/src/api/routes/tests/row.spec.js.html +0 -1804
  474. package/coverage/lcov-report/src/api/routes/tests/screen.spec.js.html +0 -391
  475. package/coverage/lcov-report/src/api/routes/tests/static.spec.js.html +0 -541
  476. package/coverage/lcov-report/src/api/routes/tests/table.spec.js.html +0 -991
  477. package/coverage/lcov-report/src/api/routes/tests/templates.spec.js.html +0 -154
  478. package/coverage/lcov-report/src/api/routes/tests/user.spec.js.html +0 -679
  479. package/coverage/lcov-report/src/api/routes/tests/view.spec.js.html +0 -1342
  480. package/coverage/lcov-report/src/api/routes/tests/webhook.spec.js.html +0 -484
  481. package/coverage/lcov-report/src/automations/tests/automation.spec.js.html +0 -337
  482. package/coverage/lcov-report/src/automations/tests/bash.spec.js.html +0 -187
  483. package/coverage/lcov-report/src/automations/tests/createRow.spec.ts.html +0 -223
  484. package/coverage/lcov-report/src/automations/tests/delay.spec.js.html +0 -133
  485. package/coverage/lcov-report/src/automations/tests/deleteRow.spec.ts.html +0 -250
  486. package/coverage/lcov-report/src/automations/tests/discord.spec.js.html +0 -166
  487. package/coverage/lcov-report/src/automations/tests/executeQuery.spec.js.html +0 -229
  488. package/coverage/lcov-report/src/automations/tests/executeScript.spec.js.html +0 -229
  489. package/coverage/lcov-report/src/automations/tests/filter.spec.js.html +0 -232
  490. package/coverage/lcov-report/src/automations/tests/index.html +0 -341
  491. package/coverage/lcov-report/src/automations/tests/loop.spec.ts.html +0 -220
  492. package/coverage/lcov-report/src/automations/tests/outgoingWebhook.spec.js.html +0 -202
  493. package/coverage/lcov-report/src/automations/tests/queryRows.spec.js.html +0 -436
  494. package/coverage/lcov-report/src/automations/tests/sendSmtpEmail.spec.js.html +0 -298
  495. package/coverage/lcov-report/src/automations/tests/serverLog.spec.js.html +0 -151
  496. package/coverage/lcov-report/src/automations/tests/updateRow.spec.js.html +0 -217
  497. package/coverage/lcov-report/src/automations/tests/zapier.spec.js.html +0 -166
  498. package/coverage/lcov-report/src/automations/unitTests/automationUtils.spec.ts.html +0 -280
  499. package/coverage/lcov-report/src/automations/unitTests/index.html +0 -116
  500. package/coverage/lcov-report/src/db/tests/index.html +0 -131
  501. package/coverage/lcov-report/src/db/tests/linkController.spec.js.html +0 -793
  502. package/coverage/lcov-report/src/db/tests/linkTests.spec.js.html +0 -277
  503. package/coverage/lcov-report/src/integration-test/index.html +0 -116
  504. package/coverage/lcov-report/src/integration-test/postgres.spec.ts.html +0 -2341
  505. package/coverage/lcov-report/src/integrations/tests/airtable.spec.ts.html +0 -310
  506. package/coverage/lcov-report/src/integrations/tests/arangodb.spec.ts.html +0 -199
  507. package/coverage/lcov-report/src/integrations/tests/couchdb.spec.ts.html +0 -349
  508. package/coverage/lcov-report/src/integrations/tests/dynamodb.spec.ts.html +0 -550
  509. package/coverage/lcov-report/src/integrations/tests/elasticsearch.spec.ts.html +0 -331
  510. package/coverage/lcov-report/src/integrations/tests/firebase.spec.ts.html +0 -376
  511. package/coverage/lcov-report/src/integrations/tests/microsoftSqlServer.spec.ts.html +0 -253
  512. package/coverage/lcov-report/src/integrations/tests/mongo.spec.ts.html +0 -1087
  513. package/coverage/lcov-report/src/integrations/tests/mysql.spec.ts.html +0 -484
  514. package/coverage/lcov-report/src/integrations/tests/oracle.spec.ts.html +0 -373
  515. package/coverage/lcov-report/src/integrations/tests/postgres.spec.ts.html +0 -328
  516. package/coverage/lcov-report/src/integrations/tests/redis.spec.ts.html +0 -337
  517. package/coverage/lcov-report/src/integrations/tests/rest.spec.ts.html +0 -1870
  518. package/coverage/lcov-report/src/integrations/tests/s3.spec.ts.html +0 -421
  519. package/coverage/lcov-report/src/integrations/tests/sql.spec.ts.html +0 -1753
  520. package/coverage/lcov-report/src/middleware/tests/authorized.spec.js.html +0 -574
  521. package/coverage/lcov-report/src/middleware/tests/currentapp.spec.js.html +0 -814
  522. package/coverage/lcov-report/src/middleware/tests/index.html +0 -161
  523. package/coverage/lcov-report/src/middleware/tests/resourceId.spec.js.html +0 -397
  524. package/coverage/lcov-report/src/middleware/tests/selfhost.spec.js.html +0 -214
  525. package/coverage/lcov-report/src/migrations/functions/tests/appUrls.spec.js.html +0 -163
  526. package/coverage/lcov-report/src/migrations/functions/tests/index.html +0 -161
  527. package/coverage/lcov-report/src/migrations/functions/tests/syncQuotas.spec.js.html +0 -163
  528. package/coverage/lcov-report/src/migrations/functions/tests/tableSettings.spec.ts.html +0 -517
  529. package/coverage/lcov-report/src/migrations/functions/tests/userEmailViewCasing.spec.js.html +0 -190
  530. package/coverage/lcov-report/src/migrations/functions/usageQuotas/tests/index.html +0 -131
  531. package/coverage/lcov-report/src/migrations/functions/usageQuotas/tests/syncApps.spec.ts.html +0 -190
  532. package/coverage/lcov-report/src/migrations/functions/usageQuotas/tests/syncRows.spec.ts.html +0 -244
  533. package/coverage/lcov-report/src/migrations/tests/index.spec.ts.html +0 -511
  534. package/coverage/lcov-report/src/sdk/tests/attachments.spec.ts.html +0 -313
  535. package/coverage/lcov-report/src/sdk/tests/index.html +0 -116
  536. package/coverage/lcov-report/src/utilities/retry.ts.html +0 -139
  537. package/coverage/lcov-report/src/utilities/rowProcessor/tests/index.html +0 -116
  538. package/coverage/lcov-report/src/utilities/rowProcessor/tests/utils.spec.ts.html +0 -256
  539. package/dist/api/routes/tests/utilities/index.js +0 -131
  540. package/dist/tests/utilities/TestConfiguration.js +0 -626
  541. package/dist/tests/utilities/controllers.js +0 -40
  542. package/dist/tests/utilities/structures.js +0 -234
  543. package/dist/utilities/retry.js +0 -30
  544. package/jest-testcontainers-config.js +0 -8
  545. package/scripts/load/create-many-apps.js +0 -24
  546. package/scripts/load/create-many-rows.js +0 -30
  547. package/scripts/load/utils.js +0 -66
  548. package/src/api/routes/tests/environmentVariables.spec.ts +0 -144
  549. package/src/integration-test/postgres.spec.ts +0 -752
  550. package/src/utilities/retry.ts +0 -18
@@ -23,30 +23,30 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">92.5% </span>
26
+ <span class="strong">92.52% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>222/240</span>
28
+ <span class='fraction'>198/214</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">85.21% </span>
33
+ <span class="strong">84.4% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>98/115</span>
35
+ <span class='fraction'>92/109</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">91.93% </span>
40
+ <span class="strong">92.85% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>57/62</span>
42
+ <span class='fraction'>52/56</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">92.46% </span>
47
+ <span class="strong">92.48% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>221/239</span>
49
+ <span class='fraction'>197/213</span>
50
50
  </div>
51
51
 
52
52
 
@@ -712,132 +712,31 @@
712
712
  <a name='L647'></a><a href='#L647'>647</a>
713
713
  <a name='L648'></a><a href='#L648'>648</a>
714
714
  <a name='L649'></a><a href='#L649'>649</a>
715
- <a name='L650'></a><a href='#L650'>650</a>
716
- <a name='L651'></a><a href='#L651'>651</a>
717
- <a name='L652'></a><a href='#L652'>652</a>
718
- <a name='L653'></a><a href='#L653'>653</a>
719
- <a name='L654'></a><a href='#L654'>654</a>
720
- <a name='L655'></a><a href='#L655'>655</a>
721
- <a name='L656'></a><a href='#L656'>656</a>
722
- <a name='L657'></a><a href='#L657'>657</a>
723
- <a name='L658'></a><a href='#L658'>658</a>
724
- <a name='L659'></a><a href='#L659'>659</a>
725
- <a name='L660'></a><a href='#L660'>660</a>
726
- <a name='L661'></a><a href='#L661'>661</a>
727
- <a name='L662'></a><a href='#L662'>662</a>
728
- <a name='L663'></a><a href='#L663'>663</a>
729
- <a name='L664'></a><a href='#L664'>664</a>
730
- <a name='L665'></a><a href='#L665'>665</a>
731
- <a name='L666'></a><a href='#L666'>666</a>
732
- <a name='L667'></a><a href='#L667'>667</a>
733
- <a name='L668'></a><a href='#L668'>668</a>
734
- <a name='L669'></a><a href='#L669'>669</a>
735
- <a name='L670'></a><a href='#L670'>670</a>
736
- <a name='L671'></a><a href='#L671'>671</a>
737
- <a name='L672'></a><a href='#L672'>672</a>
738
- <a name='L673'></a><a href='#L673'>673</a>
739
- <a name='L674'></a><a href='#L674'>674</a>
740
- <a name='L675'></a><a href='#L675'>675</a>
741
- <a name='L676'></a><a href='#L676'>676</a>
742
- <a name='L677'></a><a href='#L677'>677</a>
743
- <a name='L678'></a><a href='#L678'>678</a>
744
- <a name='L679'></a><a href='#L679'>679</a>
745
- <a name='L680'></a><a href='#L680'>680</a>
746
- <a name='L681'></a><a href='#L681'>681</a>
747
- <a name='L682'></a><a href='#L682'>682</a>
748
- <a name='L683'></a><a href='#L683'>683</a>
749
- <a name='L684'></a><a href='#L684'>684</a>
750
- <a name='L685'></a><a href='#L685'>685</a>
751
- <a name='L686'></a><a href='#L686'>686</a>
752
- <a name='L687'></a><a href='#L687'>687</a>
753
- <a name='L688'></a><a href='#L688'>688</a>
754
- <a name='L689'></a><a href='#L689'>689</a>
755
- <a name='L690'></a><a href='#L690'>690</a>
756
- <a name='L691'></a><a href='#L691'>691</a>
757
- <a name='L692'></a><a href='#L692'>692</a>
758
- <a name='L693'></a><a href='#L693'>693</a>
759
- <a name='L694'></a><a href='#L694'>694</a>
760
- <a name='L695'></a><a href='#L695'>695</a>
761
- <a name='L696'></a><a href='#L696'>696</a>
762
- <a name='L697'></a><a href='#L697'>697</a>
763
- <a name='L698'></a><a href='#L698'>698</a>
764
- <a name='L699'></a><a href='#L699'>699</a>
765
- <a name='L700'></a><a href='#L700'>700</a>
766
- <a name='L701'></a><a href='#L701'>701</a>
767
- <a name='L702'></a><a href='#L702'>702</a>
768
- <a name='L703'></a><a href='#L703'>703</a>
769
- <a name='L704'></a><a href='#L704'>704</a>
770
- <a name='L705'></a><a href='#L705'>705</a>
771
- <a name='L706'></a><a href='#L706'>706</a>
772
- <a name='L707'></a><a href='#L707'>707</a>
773
- <a name='L708'></a><a href='#L708'>708</a>
774
- <a name='L709'></a><a href='#L709'>709</a>
775
- <a name='L710'></a><a href='#L710'>710</a>
776
- <a name='L711'></a><a href='#L711'>711</a>
777
- <a name='L712'></a><a href='#L712'>712</a>
778
- <a name='L713'></a><a href='#L713'>713</a>
779
- <a name='L714'></a><a href='#L714'>714</a>
780
- <a name='L715'></a><a href='#L715'>715</a>
781
- <a name='L716'></a><a href='#L716'>716</a>
782
- <a name='L717'></a><a href='#L717'>717</a>
783
- <a name='L718'></a><a href='#L718'>718</a>
784
- <a name='L719'></a><a href='#L719'>719</a>
785
- <a name='L720'></a><a href='#L720'>720</a>
786
- <a name='L721'></a><a href='#L721'>721</a>
787
- <a name='L722'></a><a href='#L722'>722</a>
788
- <a name='L723'></a><a href='#L723'>723</a>
789
- <a name='L724'></a><a href='#L724'>724</a>
790
- <a name='L725'></a><a href='#L725'>725</a>
791
- <a name='L726'></a><a href='#L726'>726</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">57x</span>
792
- <span class="cline-any cline-neutral">&nbsp;</span>
793
- <span class="cline-any cline-neutral">&nbsp;</span>
794
- <span class="cline-any cline-yes">57x</span>
795
- <span class="cline-any cline-yes">57x</span>
796
- <span class="cline-any cline-neutral">&nbsp;</span>
797
- <span class="cline-any cline-neutral">&nbsp;</span>
798
- <span class="cline-any cline-yes">57x</span>
799
- <span class="cline-any cline-neutral">&nbsp;</span>
800
- <span class="cline-any cline-yes">57x</span>
801
- <span class="cline-any cline-yes">57x</span>
802
- <span class="cline-any cline-yes">57x</span>
803
- <span class="cline-any cline-yes">57x</span>
804
- <span class="cline-any cline-neutral">&nbsp;</span>
805
- <span class="cline-any cline-neutral">&nbsp;</span>
806
- <span class="cline-any cline-neutral">&nbsp;</span>
807
- <span class="cline-any cline-neutral">&nbsp;</span>
808
- <span class="cline-any cline-neutral">&nbsp;</span>
809
- <span class="cline-any cline-neutral">&nbsp;</span>
810
- <span class="cline-any cline-neutral">&nbsp;</span>
811
- <span class="cline-any cline-neutral">&nbsp;</span>
812
- <span class="cline-any cline-neutral">&nbsp;</span>
813
- <span class="cline-any cline-neutral">&nbsp;</span>
814
- <span class="cline-any cline-neutral">&nbsp;</span>
815
- <span class="cline-any cline-yes">57x</span>
816
- <span class="cline-any cline-neutral">&nbsp;</span>
715
+ <a name='L650'></a><a href='#L650'>650</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">55x</span>
817
716
  <span class="cline-any cline-neutral">&nbsp;</span>
818
717
  <span class="cline-any cline-neutral">&nbsp;</span>
718
+ <span class="cline-any cline-yes">55x</span>
719
+ <span class="cline-any cline-yes">55x</span>
819
720
  <span class="cline-any cline-neutral">&nbsp;</span>
820
721
  <span class="cline-any cline-neutral">&nbsp;</span>
722
+ <span class="cline-any cline-yes">55x</span>
821
723
  <span class="cline-any cline-neutral">&nbsp;</span>
724
+ <span class="cline-any cline-yes">55x</span>
725
+ <span class="cline-any cline-yes">55x</span>
726
+ <span class="cline-any cline-yes">55x</span>
822
727
  <span class="cline-any cline-neutral">&nbsp;</span>
823
728
  <span class="cline-any cline-neutral">&nbsp;</span>
824
729
  <span class="cline-any cline-neutral">&nbsp;</span>
825
730
  <span class="cline-any cline-neutral">&nbsp;</span>
826
731
  <span class="cline-any cline-neutral">&nbsp;</span>
827
- <span class="cline-any cline-yes">57x</span>
828
- <span class="cline-any cline-yes">57x</span>
829
- <span class="cline-any cline-yes">57x</span>
830
- <span class="cline-any cline-yes">57x</span>
831
- <span class="cline-any cline-yes">57x</span>
832
- <span class="cline-any cline-yes">57x</span>
833
732
  <span class="cline-any cline-neutral">&nbsp;</span>
834
733
  <span class="cline-any cline-neutral">&nbsp;</span>
835
734
  <span class="cline-any cline-neutral">&nbsp;</span>
836
735
  <span class="cline-any cline-neutral">&nbsp;</span>
837
736
  <span class="cline-any cline-neutral">&nbsp;</span>
838
737
  <span class="cline-any cline-neutral">&nbsp;</span>
738
+ <span class="cline-any cline-yes">55x</span>
839
739
  <span class="cline-any cline-neutral">&nbsp;</span>
840
- <span class="cline-any cline-yes">57x</span>
841
740
  <span class="cline-any cline-neutral">&nbsp;</span>
842
741
  <span class="cline-any cline-neutral">&nbsp;</span>
843
742
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -847,7 +746,19 @@
847
746
  <span class="cline-any cline-neutral">&nbsp;</span>
848
747
  <span class="cline-any cline-neutral">&nbsp;</span>
849
748
  <span class="cline-any cline-neutral">&nbsp;</span>
749
+ <span class="cline-any cline-yes">55x</span>
750
+ <span class="cline-any cline-yes">55x</span>
751
+ <span class="cline-any cline-yes">55x</span>
752
+ <span class="cline-any cline-yes">55x</span>
753
+ <span class="cline-any cline-yes">55x</span>
754
+ <span class="cline-any cline-yes">55x</span>
755
+ <span class="cline-any cline-yes">55x</span>
850
756
  <span class="cline-any cline-neutral">&nbsp;</span>
757
+ <span class="cline-any cline-yes">55x</span>
758
+ <span class="cline-any cline-yes">55x</span>
759
+ <span class="cline-any cline-yes">55x</span>
760
+ <span class="cline-any cline-yes">55x</span>
761
+ <span class="cline-any cline-yes">55x</span>
851
762
  <span class="cline-any cline-neutral">&nbsp;</span>
852
763
  <span class="cline-any cline-neutral">&nbsp;</span>
853
764
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -867,34 +778,22 @@
867
778
  <span class="cline-any cline-neutral">&nbsp;</span>
868
779
  <span class="cline-any cline-neutral">&nbsp;</span>
869
780
  <span class="cline-any cline-neutral">&nbsp;</span>
870
- <span class="cline-any cline-yes">55x</span>
781
+ <span class="cline-any cline-yes">53x</span>
871
782
  <span class="cline-any cline-neutral">&nbsp;</span>
872
- <span class="cline-any cline-yes">32x</span>
873
- <span class="cline-any cline-yes">32x</span>
783
+ <span class="cline-any cline-yes">30x</span>
784
+ <span class="cline-any cline-yes">30x</span>
874
785
  <span class="cline-any cline-neutral">&nbsp;</span>
875
- <span class="cline-any cline-yes">32x</span>
876
- <span class="cline-any cline-yes">32x</span>
786
+ <span class="cline-any cline-yes">30x</span>
787
+ <span class="cline-any cline-yes">30x</span>
877
788
  <span class="cline-any cline-neutral">&nbsp;</span>
878
789
  <span class="cline-any cline-yes">23x</span>
879
790
  <span class="cline-any cline-neutral">&nbsp;</span>
880
- <span class="cline-any cline-yes">55x</span>
881
- <span class="cline-any cline-yes">55x</span>
882
- <span class="cline-any cline-yes">55x</span>
883
- <span class="cline-any cline-yes">55x</span>
884
- <span class="cline-any cline-neutral">&nbsp;</span>
885
- <span class="cline-any cline-neutral">&nbsp;</span>
886
- <span class="cline-any cline-neutral">&nbsp;</span>
887
- <span class="cline-any cline-yes">166x</span>
888
- <span class="cline-any cline-neutral">&nbsp;</span>
889
- <span class="cline-any cline-neutral">&nbsp;</span>
890
- <span class="cline-any cline-neutral">&nbsp;</span>
891
- <span class="cline-any cline-neutral">&nbsp;</span>
892
- <span class="cline-any cline-neutral">&nbsp;</span>
893
- <span class="cline-any cline-neutral">&nbsp;</span>
791
+ <span class="cline-any cline-yes">53x</span>
792
+ <span class="cline-any cline-yes">53x</span>
894
793
  <span class="cline-any cline-neutral">&nbsp;</span>
895
794
  <span class="cline-any cline-neutral">&nbsp;</span>
896
795
  <span class="cline-any cline-neutral">&nbsp;</span>
897
- <span class="cline-any cline-yes">31x</span>
796
+ <span class="cline-any cline-yes">29x</span>
898
797
  <span class="cline-any cline-neutral">&nbsp;</span>
899
798
  <span class="cline-any cline-neutral">&nbsp;</span>
900
799
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -906,7 +805,7 @@
906
805
  <span class="cline-any cline-neutral">&nbsp;</span>
907
806
  <span class="cline-any cline-neutral">&nbsp;</span>
908
807
  <span class="cline-any cline-neutral">&nbsp;</span>
909
- <span class="cline-any cline-yes">242x</span>
808
+ <span class="cline-any cline-yes">380x</span>
910
809
  <span class="cline-any cline-neutral">&nbsp;</span>
911
810
  <span class="cline-any cline-neutral">&nbsp;</span>
912
811
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -923,19 +822,18 @@
923
822
  <span class="cline-any cline-neutral">&nbsp;</span>
924
823
  <span class="cline-any cline-neutral">&nbsp;</span>
925
824
  <span class="cline-any cline-neutral">&nbsp;</span>
926
- <span class="cline-any cline-yes">828x</span>
927
- <span class="cline-any cline-yes">182x</span>
825
+ <span class="cline-any cline-yes">1071x</span>
826
+ <span class="cline-any cline-yes">347x</span>
928
827
  <span class="cline-any cline-neutral">&nbsp;</span>
828
+ <span class="cline-any cline-yes">1071x</span>
929
829
  <span class="cline-any cline-neutral">&nbsp;</span>
930
- <span class="cline-any cline-yes">828x</span>
931
- <span class="cline-any cline-yes">828x</span>
830
+ <span class="cline-any cline-yes">1071x</span>
831
+ <span class="cline-any cline-yes">461x</span>
832
+ <span class="cline-any cline-yes">461x</span>
932
833
  <span class="cline-any cline-neutral">&nbsp;</span>
933
- <span class="cline-any cline-yes">828x</span>
934
- <span class="cline-any cline-yes">548x</span>
935
- <span class="cline-any cline-yes">548x</span>
936
834
  <span class="cline-any cline-neutral">&nbsp;</span>
835
+ <span class="cline-any cline-yes">610x</span>
937
836
  <span class="cline-any cline-neutral">&nbsp;</span>
938
- <span class="cline-any cline-yes">280x</span>
939
837
  <span class="cline-any cline-neutral">&nbsp;</span>
940
838
  <span class="cline-any cline-neutral">&nbsp;</span>
941
839
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -943,76 +841,49 @@
943
841
  <span class="cline-any cline-neutral">&nbsp;</span>
944
842
  <span class="cline-any cline-neutral">&nbsp;</span>
945
843
  <span class="cline-any cline-neutral">&nbsp;</span>
844
+ <span class="cline-any cline-yes">276x</span>
845
+ <span class="cline-any cline-yes">54x</span>
946
846
  <span class="cline-any cline-neutral">&nbsp;</span>
947
- <span class="cline-any cline-yes">111x</span>
948
- <span class="cline-any cline-yes">111x</span>
949
- <span class="cline-any cline-yes">105x</span>
847
+ <span class="cline-any cline-yes">276x</span>
848
+ <span class="cline-any cline-yes">276x</span>
849
+ <span class="cline-any cline-yes">276x</span>
950
850
  <span class="cline-any cline-neutral">&nbsp;</span>
851
+ <span class="cline-any cline-yes">276x</span>
951
852
  <span class="cline-any cline-neutral">&nbsp;</span>
952
- <span class="cline-any cline-yes">111x</span>
953
- <span class="cline-any cline-yes">29x</span>
954
853
  <span class="cline-any cline-neutral">&nbsp;</span>
955
- <span class="cline-any cline-yes">111x</span>
956
- <span class="cline-any cline-yes">111x</span>
957
- <span class="cline-any cline-yes">111x</span>
958
854
  <span class="cline-any cline-neutral">&nbsp;</span>
959
- <span class="cline-any cline-yes">111x</span>
960
- <span class="cline-any cline-neutral">&nbsp;</span>
961
- <span class="cline-any cline-neutral">&nbsp;</span>
962
- <span class="cline-any cline-neutral">&nbsp;</span>
963
- <span class="cline-any cline-yes">53x</span>
855
+ <span class="cline-any cline-yes">51x</span>
964
856
  <span class="cline-any cline-no">&nbsp;</span>
965
857
  <span class="cline-any cline-neutral">&nbsp;</span>
966
- <span class="cline-any cline-yes">53x</span>
967
- <span class="cline-any cline-yes">32x</span>
968
- <span class="cline-any cline-neutral">&nbsp;</span>
969
- <span class="cline-any cline-yes">53x</span>
970
- <span class="cline-any cline-yes">220x</span>
971
- <span class="cline-any cline-neutral">&nbsp;</span>
972
- <span class="cline-any cline-neutral">&nbsp;</span>
973
- <span class="cline-any cline-neutral">&nbsp;</span>
974
- <span class="cline-any cline-neutral">&nbsp;</span>
975
- <span class="cline-any cline-yes">57x</span>
976
- <span class="cline-any cline-yes">6x</span>
977
- <span class="cline-any cline-yes">6x</span>
978
- <span class="cline-any cline-neutral">&nbsp;</span>
979
- <span class="cline-any cline-neutral">&nbsp;</span>
980
- <span class="cline-any cline-yes">57x</span>
981
- <span class="cline-any cline-yes">6x</span>
982
- <span class="cline-any cline-yes">6x</span>
983
- <span class="cline-any cline-neutral">&nbsp;</span>
984
- <span class="cline-any cline-neutral">&nbsp;</span>
985
- <span class="cline-any cline-yes">55x</span>
986
- <span class="cline-any cline-no">&nbsp;</span>
987
- <span class="cline-any cline-no">&nbsp;</span>
858
+ <span class="cline-any cline-yes">51x</span>
859
+ <span class="cline-any cline-yes">30x</span>
988
860
  <span class="cline-any cline-neutral">&nbsp;</span>
861
+ <span class="cline-any cline-yes">51x</span>
862
+ <span class="cline-any cline-yes">520x</span>
989
863
  <span class="cline-any cline-neutral">&nbsp;</span>
990
- <span class="cline-any cline-yes">55x</span>
991
- <span class="cline-any cline-yes">6x</span>
992
- <span class="cline-any cline-yes">6x</span>
993
864
  <span class="cline-any cline-neutral">&nbsp;</span>
994
865
  <span class="cline-any cline-neutral">&nbsp;</span>
995
866
  <span class="cline-any cline-neutral">&nbsp;</span>
996
867
  <span class="cline-any cline-neutral">&nbsp;</span>
997
868
  <span class="cline-any cline-neutral">&nbsp;</span>
998
869
  <span class="cline-any cline-neutral">&nbsp;</span>
999
- <span class="cline-any cline-yes">767x</span>
1000
- <span class="cline-any cline-yes">767x</span>
1001
- <span class="cline-any cline-yes">767x</span>
870
+ <span class="cline-any cline-yes">1010x</span>
871
+ <span class="cline-any cline-yes">1010x</span>
872
+ <span class="cline-any cline-yes">1010x</span>
1002
873
  <span class="cline-any cline-neutral">&nbsp;</span>
1003
- <span class="cline-any cline-yes">767x</span>
1004
- <span class="cline-any cline-yes">767x</span>
1005
- <span class="cline-any cline-yes">767x</span>
1006
- <span class="cline-any cline-yes">767x</span>
1007
- <span class="cline-any cline-yes">767x</span>
874
+ <span class="cline-any cline-yes">1010x</span>
875
+ <span class="cline-any cline-yes">1010x</span>
876
+ <span class="cline-any cline-yes">1010x</span>
877
+ <span class="cline-any cline-yes">1010x</span>
878
+ <span class="cline-any cline-yes">1010x</span>
1008
879
  <span class="cline-any cline-neutral">&nbsp;</span>
1009
880
  <span class="cline-any cline-neutral">&nbsp;</span>
1010
- <span class="cline-any cline-yes">767x</span>
1011
- <span class="cline-any cline-yes">214x</span>
881
+ <span class="cline-any cline-yes">1010x</span>
882
+ <span class="cline-any cline-yes">117x</span>
1012
883
  <span class="cline-any cline-neutral">&nbsp;</span>
1013
- <span class="cline-any cline-yes">767x</span>
1014
- <span class="cline-any cline-yes">767x</span>
1015
- <span class="cline-any cline-yes">764x</span>
884
+ <span class="cline-any cline-yes">1010x</span>
885
+ <span class="cline-any cline-yes">1010x</span>
886
+ <span class="cline-any cline-yes">1007x</span>
1016
887
  <span class="cline-any cline-neutral">&nbsp;</span>
1017
888
  <span class="cline-any cline-neutral">&nbsp;</span>
1018
889
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -1026,14 +897,14 @@
1026
897
  <span class="cline-any cline-neutral">&nbsp;</span>
1027
898
  <span class="cline-any cline-neutral">&nbsp;</span>
1028
899
  <span class="cline-any cline-neutral">&nbsp;</span>
1029
- <span class="cline-any cline-yes">160x</span>
900
+ <span class="cline-any cline-yes">325x</span>
1030
901
  <span class="cline-any cline-neutral">&nbsp;</span>
1031
- <span class="cline-any cline-yes">160x</span>
1032
- <span class="cline-any cline-yes">160x</span>
902
+ <span class="cline-any cline-yes">325x</span>
903
+ <span class="cline-any cline-yes">325x</span>
1033
904
  <span class="cline-any cline-neutral">&nbsp;</span>
1034
- <span class="cline-any cline-yes">146x</span>
905
+ <span class="cline-any cline-yes">82x</span>
1035
906
  <span class="cline-any cline-neutral">&nbsp;</span>
1036
- <span class="cline-any cline-yes">160x</span>
907
+ <span class="cline-any cline-yes">325x</span>
1037
908
  <span class="cline-any cline-neutral">&nbsp;</span>
1038
909
  <span class="cline-any cline-neutral">&nbsp;</span>
1039
910
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -1041,24 +912,23 @@
1041
912
  <span class="cline-any cline-neutral">&nbsp;</span>
1042
913
  <span class="cline-any cline-neutral">&nbsp;</span>
1043
914
  <span class="cline-any cline-neutral">&nbsp;</span>
1044
- <span class="cline-any cline-yes">160x</span>
915
+ <span class="cline-any cline-yes">325x</span>
1045
916
  <span class="cline-any cline-neutral">&nbsp;</span>
1046
917
  <span class="cline-any cline-neutral">&nbsp;</span>
1047
918
  <span class="cline-any cline-neutral">&nbsp;</span>
1048
919
  <span class="cline-any cline-neutral">&nbsp;</span>
1049
- <span class="cline-any cline-yes">160x</span>
1050
- <span class="cline-any cline-yes">127x</span>
920
+ <span class="cline-any cline-yes">325x</span>
921
+ <span class="cline-any cline-yes">292x</span>
1051
922
  <span class="cline-any cline-neutral">&nbsp;</span>
1052
923
  <span class="cline-any cline-yes">33x</span>
1053
924
  <span class="cline-any cline-neutral">&nbsp;</span>
1054
- <span class="cline-any cline-yes">160x</span>
925
+ <span class="cline-any cline-yes">325x</span>
1055
926
  <span class="cline-any cline-yes">2x</span>
1056
927
  <span class="cline-any cline-neutral">&nbsp;</span>
1057
- <span class="cline-any cline-yes">158x</span>
1058
- <span class="cline-any cline-neutral">&nbsp;</span>
1059
- <span class="cline-any cline-yes">160x</span>
1060
- <span class="cline-any cline-yes">160x</span>
928
+ <span class="cline-any cline-yes">323x</span>
1061
929
  <span class="cline-any cline-neutral">&nbsp;</span>
930
+ <span class="cline-any cline-yes">325x</span>
931
+ <span class="cline-any cline-yes">325x</span>
1062
932
  <span class="cline-any cline-neutral">&nbsp;</span>
1063
933
  <span class="cline-any cline-neutral">&nbsp;</span>
1064
934
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -1074,15 +944,6 @@
1074
944
  <span class="cline-any cline-neutral">&nbsp;</span>
1075
945
  <span class="cline-any cline-neutral">&nbsp;</span>
1076
946
  <span class="cline-any cline-neutral">&nbsp;</span>
1077
- <span class="cline-any cline-neutral">&nbsp;</span>
1078
- <span class="cline-any cline-yes">16x</span>
1079
- <span class="cline-any cline-yes">16x</span>
1080
- <span class="cline-any cline-yes">16x</span>
1081
- <span class="cline-any cline-yes">16x</span>
1082
- <span class="cline-any cline-yes">16x</span>
1083
- <span class="cline-any cline-yes">16x</span>
1084
- <span class="cline-any cline-yes">13x</span>
1085
- <span class="cline-any cline-neutral">&nbsp;</span>
1086
947
  <span class="cline-any cline-yes">16x</span>
1087
948
  <span class="cline-any cline-yes">16x</span>
1088
949
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -1146,21 +1007,18 @@
1146
1007
  <span class="cline-any cline-neutral">&nbsp;</span>
1147
1008
  <span class="cline-any cline-neutral">&nbsp;</span>
1148
1009
  <span class="cline-any cline-neutral">&nbsp;</span>
1149
- <span class="cline-any cline-yes">277x</span>
1150
- <span class="cline-any cline-yes">277x</span>
1151
- <span class="cline-any cline-neutral">&nbsp;</span>
1152
- <span class="cline-any cline-neutral">&nbsp;</span>
1010
+ <span class="cline-any cline-yes">237x</span>
1153
1011
  <span class="cline-any cline-neutral">&nbsp;</span>
1154
1012
  <span class="cline-any cline-neutral">&nbsp;</span>
1155
- <span class="cline-any cline-yes">277x</span>
1156
1013
  <span class="cline-any cline-neutral">&nbsp;</span>
1157
1014
  <span class="cline-any cline-neutral">&nbsp;</span>
1015
+ <span class="cline-any cline-yes">237x</span>
1158
1016
  <span class="cline-any cline-neutral">&nbsp;</span>
1159
- <span class="cline-any cline-yes">277x</span>
1160
- <span class="cline-any cline-yes">277x</span>
1161
- <span class="cline-any cline-yes">277x</span>
1162
1017
  <span class="cline-any cline-neutral">&nbsp;</span>
1163
1018
  <span class="cline-any cline-neutral">&nbsp;</span>
1019
+ <span class="cline-any cline-yes">237x</span>
1020
+ <span class="cline-any cline-yes">237x</span>
1021
+ <span class="cline-any cline-yes">237x</span>
1164
1022
  <span class="cline-any cline-neutral">&nbsp;</span>
1165
1023
  <span class="cline-any cline-neutral">&nbsp;</span>
1166
1024
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -1168,14 +1026,11 @@
1168
1026
  <span class="cline-any cline-neutral">&nbsp;</span>
1169
1027
  <span class="cline-any cline-neutral">&nbsp;</span>
1170
1028
  <span class="cline-any cline-neutral">&nbsp;</span>
1171
- <span class="cline-any cline-yes">277x</span>
1172
- <span class="cline-any cline-yes">277x</span>
1173
1029
  <span class="cline-any cline-neutral">&nbsp;</span>
1174
- <span class="cline-any cline-yes">277x</span>
1030
+ <span class="cline-any cline-yes">237x</span>
1031
+ <span class="cline-any cline-yes">237x</span>
1175
1032
  <span class="cline-any cline-neutral">&nbsp;</span>
1176
- <span class="cline-any cline-neutral">&nbsp;</span>
1177
- <span class="cline-any cline-neutral">&nbsp;</span>
1178
- <span class="cline-any cline-yes">2423x</span>
1033
+ <span class="cline-any cline-yes">237x</span>
1179
1034
  <span class="cline-any cline-neutral">&nbsp;</span>
1180
1035
  <span class="cline-any cline-neutral">&nbsp;</span>
1181
1036
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -1187,11 +1042,6 @@
1187
1042
  <span class="cline-any cline-yes">4x</span>
1188
1043
  <span class="cline-any cline-yes">4x</span>
1189
1044
  <span class="cline-any cline-neutral">&nbsp;</span>
1190
- <span class="cline-any cline-neutral">&nbsp;</span>
1191
- <span class="cline-any cline-yes">4x</span>
1192
- <span class="cline-any cline-yes">4x</span>
1193
- <span class="cline-any cline-neutral">&nbsp;</span>
1194
- <span class="cline-any cline-neutral">&nbsp;</span>
1195
1045
  <span class="cline-any cline-yes">4x</span>
1196
1046
  <span class="cline-any cline-neutral">&nbsp;</span>
1197
1047
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -1207,19 +1057,19 @@
1207
1057
  <span class="cline-any cline-neutral">&nbsp;</span>
1208
1058
  <span class="cline-any cline-neutral">&nbsp;</span>
1209
1059
  <span class="cline-any cline-neutral">&nbsp;</span>
1210
- <span class="cline-any cline-yes">3x</span>
1211
- <span class="cline-any cline-yes">3x</span>
1060
+ <span class="cline-any cline-yes">2x</span>
1061
+ <span class="cline-any cline-yes">2x</span>
1212
1062
  <span class="cline-any cline-neutral">&nbsp;</span>
1213
- <span class="cline-any cline-yes">3x</span>
1214
- <span class="cline-any cline-yes">3x</span>
1063
+ <span class="cline-any cline-yes">2x</span>
1064
+ <span class="cline-any cline-yes">2x</span>
1215
1065
  <span class="cline-any cline-neutral">&nbsp;</span>
1216
- <span class="cline-any cline-yes">3x</span>
1066
+ <span class="cline-any cline-yes">2x</span>
1217
1067
  <span class="cline-any cline-neutral">&nbsp;</span>
1218
- <span class="cline-any cline-yes">3x</span>
1068
+ <span class="cline-any cline-yes">2x</span>
1219
1069
  <span class="cline-any cline-neutral">&nbsp;</span>
1220
1070
  <span class="cline-any cline-neutral">&nbsp;</span>
1221
- <span class="cline-any cline-yes">3x</span>
1222
- <span class="cline-any cline-yes">3x</span>
1071
+ <span class="cline-any cline-yes">2x</span>
1072
+ <span class="cline-any cline-yes">2x</span>
1223
1073
  <span class="cline-any cline-neutral">&nbsp;</span>
1224
1074
  <span class="cline-any cline-neutral">&nbsp;</span>
1225
1075
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -1227,35 +1077,35 @@
1227
1077
  <span class="cline-any cline-neutral">&nbsp;</span>
1228
1078
  <span class="cline-any cline-neutral">&nbsp;</span>
1229
1079
  <span class="cline-any cline-neutral">&nbsp;</span>
1230
- <span class="cline-any cline-yes">123x</span>
1231
- <span class="cline-any cline-yes">123x</span>
1232
- <span class="cline-any cline-yes">123x</span>
1080
+ <span class="cline-any cline-yes">288x</span>
1081
+ <span class="cline-any cline-yes">288x</span>
1082
+ <span class="cline-any cline-yes">288x</span>
1233
1083
  <span class="cline-any cline-neutral">&nbsp;</span>
1234
1084
  <span class="cline-any cline-neutral">&nbsp;</span>
1235
1085
  <span class="cline-any cline-neutral">&nbsp;</span>
1236
1086
  <span class="cline-any cline-neutral">&nbsp;</span>
1237
- <span class="cline-any cline-yes">123x</span>
1087
+ <span class="cline-any cline-yes">288x</span>
1238
1088
  <span class="cline-any cline-neutral">&nbsp;</span>
1239
- <span class="cline-any cline-yes">123x</span>
1089
+ <span class="cline-any cline-yes">288x</span>
1240
1090
  <span class="cline-any cline-neutral">&nbsp;</span>
1241
- <span class="cline-any cline-yes">123x</span>
1091
+ <span class="cline-any cline-yes">288x</span>
1242
1092
  <span class="cline-any cline-neutral">&nbsp;</span>
1243
- <span class="cline-any cline-yes">123x</span>
1244
- <span class="cline-any cline-yes">123x</span>
1093
+ <span class="cline-any cline-yes">288x</span>
1094
+ <span class="cline-any cline-yes">288x</span>
1245
1095
  <span class="cline-any cline-neutral">&nbsp;</span>
1246
- <span class="cline-any cline-yes">123x</span>
1096
+ <span class="cline-any cline-yes">288x</span>
1247
1097
  <span class="cline-any cline-neutral">&nbsp;</span>
1248
1098
  <span class="cline-any cline-neutral">&nbsp;</span>
1249
1099
  <span class="cline-any cline-neutral">&nbsp;</span>
1250
1100
  <span class="cline-any cline-neutral">&nbsp;</span>
1251
- <span class="cline-any cline-yes">128x</span>
1101
+ <span class="cline-any cline-yes">296x</span>
1252
1102
  <span class="cline-any cline-neutral">&nbsp;</span>
1253
- <span class="cline-any cline-yes">128x</span>
1254
- <span class="cline-any cline-yes">128x</span>
1103
+ <span class="cline-any cline-yes">296x</span>
1104
+ <span class="cline-any cline-yes">296x</span>
1255
1105
  <span class="cline-any cline-neutral">&nbsp;</span>
1256
- <span class="cline-any cline-yes">128x</span>
1257
- <span class="cline-any cline-yes">128x</span>
1258
- <span class="cline-any cline-yes">128x</span>
1106
+ <span class="cline-any cline-yes">296x</span>
1107
+ <span class="cline-any cline-yes">296x</span>
1108
+ <span class="cline-any cline-yes">296x</span>
1259
1109
  <span class="cline-any cline-neutral">&nbsp;</span>
1260
1110
  <span class="cline-any cline-neutral">&nbsp;</span>
1261
1111
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -1273,16 +1123,16 @@
1273
1123
  <span class="cline-any cline-neutral">&nbsp;</span>
1274
1124
  <span class="cline-any cline-neutral">&nbsp;</span>
1275
1125
  <span class="cline-any cline-neutral">&nbsp;</span>
1276
- <span class="cline-any cline-yes">169x</span>
1277
- <span class="cline-any cline-yes">169x</span>
1278
- <span class="cline-any cline-yes">169x</span>
1126
+ <span class="cline-any cline-yes">123x</span>
1127
+ <span class="cline-any cline-yes">123x</span>
1128
+ <span class="cline-any cline-yes">123x</span>
1279
1129
  <span class="cline-any cline-neutral">&nbsp;</span>
1280
1130
  <span class="cline-any cline-neutral">&nbsp;</span>
1281
1131
  <span class="cline-any cline-neutral">&nbsp;</span>
1282
- <span class="cline-any cline-yes">165x</span>
1132
+ <span class="cline-any cline-yes">119x</span>
1283
1133
  <span class="cline-any cline-yes">3x</span>
1284
1134
  <span class="cline-any cline-neutral">&nbsp;</span>
1285
- <span class="cline-any cline-yes">165x</span>
1135
+ <span class="cline-any cline-yes">119x</span>
1286
1136
  <span class="cline-any cline-neutral">&nbsp;</span>
1287
1137
  <span class="cline-any cline-neutral">&nbsp;</span>
1288
1138
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -1323,23 +1173,23 @@
1323
1173
  <span class="cline-any cline-neutral">&nbsp;</span>
1324
1174
  <span class="cline-any cline-neutral">&nbsp;</span>
1325
1175
  <span class="cline-any cline-neutral">&nbsp;</span>
1326
- <span class="cline-any cline-yes">163x</span>
1176
+ <span class="cline-any cline-yes">71x</span>
1327
1177
  <span class="cline-any cline-no">&nbsp;</span>
1328
1178
  <span class="cline-any cline-neutral">&nbsp;</span>
1329
- <span class="cline-any cline-yes">163x</span>
1330
- <span class="cline-any cline-yes">163x</span>
1331
- <span class="cline-any cline-yes">163x</span>
1179
+ <span class="cline-any cline-yes">71x</span>
1180
+ <span class="cline-any cline-yes">71x</span>
1181
+ <span class="cline-any cline-yes">71x</span>
1332
1182
  <span class="cline-any cline-neutral">&nbsp;</span>
1333
1183
  <span class="cline-any cline-neutral">&nbsp;</span>
1334
1184
  <span class="cline-any cline-neutral">&nbsp;</span>
1335
- <span class="cline-any cline-yes">12x</span>
1185
+ <span class="cline-any cline-yes">11x</span>
1336
1186
  <span class="cline-any cline-neutral">&nbsp;</span>
1337
1187
  <span class="cline-any cline-neutral">&nbsp;</span>
1338
1188
  <span class="cline-any cline-neutral">&nbsp;</span>
1339
- <span class="cline-any cline-yes">5x</span>
1189
+ <span class="cline-any cline-yes">1x</span>
1340
1190
  <span class="cline-any cline-yes">1x</span>
1341
1191
  <span class="cline-any cline-neutral">&nbsp;</span>
1342
- <span class="cline-any cline-yes">5x</span>
1192
+ <span class="cline-any cline-yes">1x</span>
1343
1193
  <span class="cline-any cline-neutral">&nbsp;</span>
1344
1194
  <span class="cline-any cline-neutral">&nbsp;</span>
1345
1195
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -1377,14 +1227,14 @@
1377
1227
  <span class="cline-any cline-neutral">&nbsp;</span>
1378
1228
  <span class="cline-any cline-neutral">&nbsp;</span>
1379
1229
  <span class="cline-any cline-neutral">&nbsp;</span>
1380
- <span class="cline-any cline-yes">20x</span>
1381
- <span class="cline-any cline-yes">20x</span>
1230
+ <span class="cline-any cline-yes">26x</span>
1231
+ <span class="cline-any cline-yes">26x</span>
1382
1232
  <span class="cline-any cline-no">&nbsp;</span>
1383
1233
  <span class="cline-any cline-neutral">&nbsp;</span>
1384
- <span class="cline-any cline-yes">20x</span>
1234
+ <span class="cline-any cline-yes">26x</span>
1385
1235
  <span class="cline-any cline-neutral">&nbsp;</span>
1386
1236
  <span class="cline-any cline-neutral">&nbsp;</span>
1387
- <span class="cline-any cline-yes">20x</span>
1237
+ <span class="cline-any cline-yes">26x</span>
1388
1238
  <span class="cline-any cline-neutral">&nbsp;</span>
1389
1239
  <span class="cline-any cline-neutral">&nbsp;</span>
1390
1240
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -1404,22 +1254,20 @@
1404
1254
  <span class="cline-any cline-neutral">&nbsp;</span>
1405
1255
  <span class="cline-any cline-neutral">&nbsp;</span>
1406
1256
  <span class="cline-any cline-neutral">&nbsp;</span>
1407
- <span class="cline-any cline-yes">4x</span>
1257
+ <span class="cline-any cline-yes">8x</span>
1408
1258
  <span class="cline-any cline-no">&nbsp;</span>
1409
1259
  <span class="cline-any cline-neutral">&nbsp;</span>
1410
- <span class="cline-any cline-yes">4x</span>
1411
- <span class="cline-any cline-yes">4x</span>
1412
- <span class="cline-any cline-neutral">&nbsp;</span>
1413
- <span class="cline-any cline-neutral">&nbsp;</span>
1260
+ <span class="cline-any cline-yes">8x</span>
1261
+ <span class="cline-any cline-yes">8x</span>
1414
1262
  <span class="cline-any cline-neutral">&nbsp;</span>
1415
1263
  <span class="cline-any cline-neutral">&nbsp;</span>
1416
1264
  <span class="cline-any cline-neutral">&nbsp;</span>
1417
1265
  <span class="cline-any cline-neutral">&nbsp;</span>
1418
1266
  <span class="cline-any cline-neutral">&nbsp;</span>
1419
- <span class="cline-any cline-yes">63x</span>
1420
- <span class="cline-any cline-yes">63x</span>
1421
- <span class="cline-any cline-yes">62x</span>
1422
- <span class="cline-any cline-yes">62x</span>
1267
+ <span class="cline-any cline-yes">68x</span>
1268
+ <span class="cline-any cline-yes">68x</span>
1269
+ <span class="cline-any cline-yes">67x</span>
1270
+ <span class="cline-any cline-yes">67x</span>
1423
1271
  <span class="cline-any cline-neutral">&nbsp;</span>
1424
1272
  <span class="cline-any cline-neutral">&nbsp;</span>
1425
1273
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -1490,30 +1338,30 @@
1490
1338
  <span class="cline-any cline-neutral">&nbsp;</span>
1491
1339
  <span class="cline-any cline-neutral">&nbsp;</span>
1492
1340
  <span class="cline-any cline-neutral">&nbsp;</span>
1493
- <span class="cline-any cline-yes">18x</span>
1341
+ <span class="cline-any cline-yes">37x</span>
1494
1342
  <span class="cline-any cline-no">&nbsp;</span>
1495
1343
  <span class="cline-any cline-neutral">&nbsp;</span>
1496
- <span class="cline-any cline-yes">18x</span>
1497
- <span class="cline-any cline-yes">18x</span>
1344
+ <span class="cline-any cline-yes">37x</span>
1345
+ <span class="cline-any cline-yes">37x</span>
1498
1346
  <span class="cline-any cline-neutral">&nbsp;</span>
1499
1347
  <span class="cline-any cline-neutral">&nbsp;</span>
1500
1348
  <span class="cline-any cline-neutral">&nbsp;</span>
1501
1349
  <span class="cline-any cline-neutral">&nbsp;</span>
1502
1350
  <span class="cline-any cline-neutral">&nbsp;</span>
1503
- <span class="cline-any cline-yes">11x</span>
1504
- <span class="cline-any cline-yes">11x</span>
1351
+ <span class="cline-any cline-yes">27x</span>
1352
+ <span class="cline-any cline-yes">27x</span>
1505
1353
  <span class="cline-any cline-neutral">&nbsp;</span>
1506
1354
  <span class="cline-any cline-neutral">&nbsp;</span>
1507
1355
  <span class="cline-any cline-neutral">&nbsp;</span>
1508
1356
  <span class="cline-any cline-neutral">&nbsp;</span>
1509
1357
  <span class="cline-any cline-neutral">&nbsp;</span>
1510
- <span class="cline-any cline-yes">2x</span>
1511
- <span class="cline-any cline-yes">2x</span>
1358
+ <span class="cline-any cline-yes">5x</span>
1359
+ <span class="cline-any cline-yes">5x</span>
1512
1360
  <span class="cline-any cline-neutral">&nbsp;</span>
1513
1361
  <span class="cline-any cline-neutral">&nbsp;</span>
1514
1362
  <span class="cline-any cline-neutral">&nbsp;</span>
1515
- <span class="cline-any cline-yes">57x</span>
1516
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import { generator, mocks, structures } from "@budibase/backend-core/tests"
1363
+ <span class="cline-any cline-yes">55x</span>
1364
+ <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import { mocks } from "@budibase/backend-core/tests"
1517
1365
  &nbsp;
1518
1366
  // init the licensing mock
1519
1367
  import * as pro from "@budibase/pro"
@@ -1525,7 +1373,6 @@ mocks.licenses.useUnlimited()
1525
1373
  import { init as dbInit } from "../../db"
1526
1374
  dbInit()
1527
1375
  import env from "../../environment"
1528
- import { env as coreEnv } from "@budibase/backend-core"
1529
1376
  import {
1530
1377
  basicTable,
1531
1378
  basicRow,
@@ -1554,27 +1401,17 @@ import { cleanup } from "../../utilities/fileSystem"
1554
1401
  import newid from "../../db/newid"
1555
1402
  import { generateUserMetadataID } from "../../db/utils"
1556
1403
  import { startup } from "../../startup"
1557
- import supertest from "supertest"
1558
- import {
1559
- AuthToken,
1560
- Database,
1561
- Datasource,
1562
- Row,
1563
- SourceName,
1564
- Table,
1565
- } from "@budibase/types"
1566
- &nbsp;
1567
- type DefaultUserValues = {
1568
- globalUserId: string
1569
- email: string
1570
- firstName: string
1571
- lastName: string
1572
- csrfToken: string
1573
- }
1404
+ const supertest = require("supertest")
1405
+ &nbsp;
1406
+ const GLOBAL_USER_ID = "us_uuid1"
1407
+ const EMAIL = "babs@babs.com"
1408
+ const FIRSTNAME = "Barbara"
1409
+ const LASTNAME = "Barbington"
1410
+ const CSRF_TOKEN = "e3727778-7af0-4226-b5eb-f43cbe60a306"
1574
1411
  &nbsp;
1575
1412
  class TestConfiguration {
1576
1413
  server: any
1577
- request: supertest.SuperTest&lt;supertest.Test&gt; | undefined
1414
+ request: any
1578
1415
  started: boolean
1579
1416
  appId: string | null
1580
1417
  allApps: any[]
@@ -1588,8 +1425,6 @@ class TestConfiguration {
1588
1425
  linkedTable: any
1589
1426
  automation: any
1590
1427
  datasource: any
1591
- tenantId: string | null
1592
- defaultUserValues: DefaultUserValues
1593
1428
  &nbsp;
1594
1429
  constructor(openServer = true) {
1595
1430
  if (openServer) {
@@ -1604,18 +1439,6 @@ class TestConfiguration {
1604
1439
  }
1605
1440
  this.appId = null
1606
1441
  this.allApps = []
1607
- this.tenantId = null
1608
- this.defaultUserValues = this.populateDefaultUserValues()
1609
- }
1610
- &nbsp;
1611
- populateDefaultUserValues(): DefaultUserValues {
1612
- return {
1613
- globalUserId: `us_${newid()}`,
1614
- email: generator.email(),
1615
- firstName: generator.first(),
1616
- lastName: generator.last(),
1617
- csrfToken: generator.hash(),
1618
- }
1619
1442
  }
1620
1443
  &nbsp;
1621
1444
  getRequest() {
@@ -1640,10 +1463,10 @@ class TestConfiguration {
1640
1463
  &nbsp;
1641
1464
  getUserDetails() {
1642
1465
  return {
1643
- globalId: this.defaultUserValues.globalUserId,
1644
- email: this.defaultUserValues.email,
1645
- firstName: this.defaultUserValues.firstName,
1646
- lastName: this.defaultUserValues.lastName,
1466
+ globalId: GLOBAL_USER_ID,
1467
+ email: EMAIL,
1468
+ firstName: FIRSTNAME,
1469
+ lastName: LASTNAME,
1647
1470
  }
1648
1471
  }
1649
1472
  &nbsp;
@@ -1651,9 +1474,7 @@ class TestConfiguration {
1651
1474
  if (!appId) {
1652
1475
  appId = this.appId
1653
1476
  }
1654
- &nbsp;
1655
- const tenant = this.getTenantId()
1656
- return tenancy.doInTenant(tenant, () =&gt; {
1477
+ return tenancy.doInTenant(TENANT_ID, () =&gt; {
1657
1478
  // check if already in a context
1658
1479
  if (context.getAppId() == null &amp;&amp; appId !== null) {
1659
1480
  return context.doInAppContext(appId, async () =&gt; {
@@ -1669,11 +1490,6 @@ class TestConfiguration {
1669
1490
  &nbsp;
1670
1491
  // use a new id as the name to avoid name collisions
1671
1492
  async init(appName = newid()) {
1672
- this.defaultUserValues = this.populateDefaultUserValues()
1673
- if (context.isMultiTenant()) {
1674
- this.tenantId = structures.tenant.id()
1675
- }
1676
- &nbsp;
1677
1493
  if (!this.started) {
1678
1494
  await startup()
1679
1495
  }
@@ -1695,31 +1511,10 @@ class TestConfiguration {
1695
1511
  cleanup(this.allApps.map(app =&gt; app.appId))
1696
1512
  }
1697
1513
  }
1698
- &nbsp;
1699
- // MODES
1700
- #setMultiTenancy = (value: boolean) =&gt; {
1701
- env._set("MULTI_TENANCY", value)
1702
- coreEnv._set("MULTI_TENANCY", value)
1703
- }
1704
- &nbsp;
1705
- #setSelfHosted = (value: boolean) =&gt; {
1706
- env._set("SELF_HOSTED", value)
1707
- coreEnv._set("SELF_HOSTED", value)
1708
- }
1709
- &nbsp;
1710
- modeCloud = <span class="fstat-no" title="function not covered" >() =&gt; {</span>
1711
- <span class="cstat-no" title="statement not covered" > this.#setSelfHosted(false)</span>
1712
- <span class="cstat-no" title="statement not covered" > this.#setMultiTenancy(true)</span>
1713
- }
1714
- &nbsp;
1715
- modeSelf = () =&gt; {
1716
- this.#setSelfHosted(true)
1717
- this.#setMultiTenancy(false)
1718
- }
1719
1514
  &nbsp;
1720
1515
  // UTILS
1721
1516
  &nbsp;
1722
- _req(body: any, params: any, controlFunc: any) {
1517
+ async _req(body: any, params: any, controlFunc: any) {
1723
1518
  // create a fake request ctx
1724
1519
  const request: any = {}
1725
1520
  const appId = this.appId
@@ -1727,7 +1522,7 @@ class TestConfiguration {
1727
1522
  // fake cookies, we don't need them
1728
1523
  request.cookies = { set: <span class="fstat-no" title="function not covered" >() =&gt; {</span>}, get: <span class="fstat-no" title="function not covered" >() =&gt; {</span>} }
1729
1524
  request.config = { jwtSecret: env.JWT_SECRET }
1730
- request.user = { appId, tenantId: this.getTenantId() }
1525
+ request.user = { appId, tenantId: TENANT_ID }
1731
1526
  request.query = {}
1732
1527
  request.request = {
1733
1528
  body,
@@ -1743,15 +1538,15 @@ class TestConfiguration {
1743
1538
  &nbsp;
1744
1539
  // USER / AUTH
1745
1540
  async globalUser({
1746
- id = this.defaultUserValues.globalUserId,
1747
- firstName = this.defaultUserValues.firstName,
1748
- lastName = this.defaultUserValues.lastName,
1541
+ id = GLOBAL_USER_ID,
1542
+ firstName = FIRSTNAME,
1543
+ lastName = LASTNAME,
1749
1544
  builder = true,
1750
1545
  admin = false,
1751
- email = this.defaultUserValues.email,
1546
+ email = EMAIL,
1752
1547
  roles,
1753
1548
  }: any = {}) {
1754
- return tenancy.doWithGlobalDB(this.getTenantId(), async (db: Database) =&gt; {
1549
+ return tenancy.doWithGlobalDB(TENANT_ID, async (db: any) =&gt; {
1755
1550
  let existing
1756
1551
  try {
1757
1552
  existing = await db.get(id)
@@ -1762,14 +1557,14 @@ class TestConfiguration {
1762
1557
  _id: id,
1763
1558
  ...existing,
1764
1559
  roles: roles || {},
1765
- tenantId: this.getTenantId(),
1560
+ tenantId: TENANT_ID,
1766
1561
  firstName,
1767
1562
  lastName,
1768
1563
  }
1769
1564
  await sessions.createASession(id, {
1770
1565
  sessionId: "sessionid",
1771
- tenantId: this.getTenantId(),
1772
- csrfToken: this.defaultUserValues.csrfToken,
1566
+ tenantId: TENANT_ID,
1567
+ csrfToken: CSRF_TOKEN,
1773
1568
  })
1774
1569
  if (builder) {
1775
1570
  user.builder = { global: true }
@@ -1783,31 +1578,21 @@ class TestConfiguration {
1783
1578
  }
1784
1579
  const resp = await db.put(user)
1785
1580
  return {
1786
- _rev: resp.rev,
1581
+ _rev: resp._rev,
1787
1582
  ...user,
1788
1583
  }
1789
1584
  })
1790
1585
  }
1791
1586
  &nbsp;
1792
1587
  async createUser(
1793
- user: {
1794
- id?: string
1795
- firstName?: string
1796
- lastName?: string
1797
- email?: string
1798
- builder?: boolean
1799
- admin?: boolean
1800
- roles?: any
1801
- } = {}
1588
+ id = null,
1589
+ firstName = FIRSTNAME,
1590
+ lastName = LASTNAME,
1591
+ email = EMAIL,
1592
+ builder = true,
1593
+ admin = false,
1594
+ roles = {}
1802
1595
  ) {
1803
- let { id, firstName, lastName, email, builder, admin, roles } = user
1804
- firstName = firstName || this.defaultUserValues.firstName
1805
- lastName = lastName || this.defaultUserValues.lastName
1806
- email = email || this.defaultUserValues.email
1807
- roles = roles || {}
1808
- if (builder == null) {
1809
- builder = true
1810
- }
1811
1596
  const globalId = !id ? `us_${Math.random()}` : `us_${id}`
1812
1597
  const resp = await this.globalUser({
1813
1598
  id: globalId,
@@ -1842,13 +1627,13 @@ class TestConfiguration {
1842
1627
  }
1843
1628
  await sessions.createASession(userId, {
1844
1629
  sessionId: "sessionid",
1845
- tenantId: this.getTenantId(),
1630
+ tenantId: TENANT_ID,
1846
1631
  })
1847
1632
  // have to fake this
1848
1633
  const authObj = {
1849
1634
  userId,
1850
1635
  sessionId: "sessionid",
1851
- tenantId: this.getTenantId(),
1636
+ tenantId: TENANT_ID,
1852
1637
  }
1853
1638
  const app = {
1854
1639
  roleId: roleId,
@@ -1871,11 +1656,10 @@ class TestConfiguration {
1871
1656
  }
1872
1657
  &nbsp;
1873
1658
  defaultHeaders(extras = {}) {
1874
- const tenantId = this.getTenantId()
1875
- const authObj: AuthToken = {
1876
- userId: this.defaultUserValues.globalUserId,
1659
+ const authObj = {
1660
+ userId: GLOBAL_USER_ID,
1877
1661
  sessionId: "sessionid",
1878
- tenantId,
1662
+ tenantId: TENANT_ID,
1879
1663
  }
1880
1664
  const app = {
1881
1665
  roleId: roles.BUILTIN_ROLE_IDS.ADMIN,
@@ -1889,19 +1673,14 @@ class TestConfiguration {
1889
1673
  `${constants.Cookie.Auth}=${authToken}`,
1890
1674
  `${constants.Cookie.CurrentApp}=${appToken}`,
1891
1675
  ],
1892
- [constants.Header.CSRF_TOKEN]: this.defaultUserValues.csrfToken,
1676
+ [constants.Header.CSRF_TOKEN]: CSRF_TOKEN,
1893
1677
  ...extras,
1894
1678
  }
1895
- &nbsp;
1896
1679
  if (this.appId) {
1897
1680
  headers[constants.Header.APP_ID] = this.appId
1898
1681
  }
1899
1682
  return headers
1900
1683
  }
1901
- &nbsp;
1902
- getTenantId() {
1903
- return this.tenantId || TENANT_ID
1904
- }
1905
1684
  &nbsp;
1906
1685
  publicHeaders({ prodApp = true } = {}) {
1907
1686
  const appId = prodApp ? this.prodAppId : this.appId
@@ -1912,16 +1691,11 @@ class TestConfiguration {
1912
1691
  if (appId) {
1913
1692
  headers[constants.Header.APP_ID] = appId
1914
1693
  }
1915
- &nbsp;
1916
- if (this.tenantId) {
1917
- headers[constants.Header.TENANT_ID] = this.tenantId
1918
- }
1919
- &nbsp;
1920
1694
  return headers
1921
1695
  }
1922
1696
  &nbsp;
1923
1697
  async roleHeaders({
1924
- email = this.defaultUserValues.email,
1698
+ email = EMAIL,
1925
1699
  roleId = <span class="branch-0 cbranch-no" title="branch not covered" >roles.BUILTIN_ROLE_IDS.ADMIN,</span>
1926
1700
  builder = false,
1927
1701
  prodApp = true,
@@ -1931,8 +1705,8 @@ class TestConfiguration {
1931
1705
  &nbsp;
1932
1706
  // API
1933
1707
  &nbsp;
1934
- async generateApiKey(userId = this.defaultUserValues.globalUserId) {
1935
- return tenancy.doWithGlobalDB(this.getTenantId(), async (db: any) =&gt; {
1708
+ async generateApiKey(userId = GLOBAL_USER_ID) {
1709
+ return tenancy.doWithGlobalDB(TENANT_ID, async (db: any) =&gt; {
1936
1710
  const id = dbCore.generateDevInfoID(userId)
1937
1711
  let devInfo
1938
1712
  try {
@@ -1941,7 +1715,7 @@ class TestConfiguration {
1941
1715
  devInfo = { _id: id, userId }
1942
1716
  }
1943
1717
  devInfo.apiKey = encryption.encrypt(
1944
- `${this.getTenantId()}${dbCore.SEPARATOR}${newid()}`
1718
+ `${TENANT_ID}${dbCore.SEPARATOR}${newid()}`
1945
1719
  )
1946
1720
  await db.put(devInfo)
1947
1721
  return devInfo.apiKey
@@ -1997,13 +1771,13 @@ class TestConfiguration {
1997
1771
  &nbsp;
1998
1772
  // TABLE
1999
1773
  &nbsp;
2000
- async updateTable(config?: any): Promise&lt;Table&gt; {
1774
+ async updateTable(config?: any) {
2001
1775
  config = config || basicTable()
2002
1776
  this.table = await this._req(config, null, controllers.table.save)
2003
1777
  return this.table
2004
1778
  }
2005
1779
  &nbsp;
2006
- async createTable(config?: Table) {
1780
+ async createTable(config?: any) {
2007
1781
  if (config != null &amp;&amp; config._id) {
2008
1782
  delete config._id
2009
1783
  }
@@ -2047,7 +1821,7 @@ class TestConfiguration {
2047
1821
  &nbsp;
2048
1822
  // ROW
2049
1823
  &nbsp;
2050
- async createRow(config?: Row): Promise&lt;Row&gt; {
1824
+ async createRow(config: any = null) {
2051
1825
  <span class="missing-if-branch" title="if path not taken" >I</span>if (!this.table) {
2052
1826
  <span class="cstat-no" title="statement not covered" > throw "Test requires table to be configured."</span>
2053
1827
  }
@@ -2056,7 +1830,7 @@ class TestConfiguration {
2056
1830
  return this._req(config, { tableId }, controllers.row.save)
2057
1831
  }
2058
1832
  &nbsp;
2059
- async getRow(tableId: string, rowId: string): Promise&lt;Row&gt; {
1833
+ async getRow(tableId: string, rowId: string) {
2060
1834
  return this._req(null, { tableId, rowId }, controllers.row.find)
2061
1835
  }
2062
1836
  &nbsp;
@@ -2138,9 +1912,7 @@ class TestConfiguration {
2138
1912
  &nbsp;
2139
1913
  // DATASOURCE
2140
1914
  &nbsp;
2141
- async createDatasource(config?: {
2142
- datasource: Datasource
2143
- }): Promise&lt;Datasource&gt; {
1915
+ async createDatasource(config?: any) {
2144
1916
  config = config || basicDatasource()
2145
1917
  const response = await this._req(config, null, controllers.datasource.save)
2146
1918
  this.datasource = response.datasource
@@ -2161,7 +1933,7 @@ class TestConfiguration {
2161
1933
  return this.createDatasource({
2162
1934
  datasource: {
2163
1935
  ...basicDatasource().datasource,
2164
- source: SourceName.REST,
1936
+ source: "REST",
2165
1937
  config: cfg || {},
2166
1938
  },
2167
1939
  })
@@ -2170,7 +1942,7 @@ class TestConfiguration {
2170
1942
  async dynamicVariableDatasource() {
2171
1943
  let datasource = await this.restDatasource()
2172
1944
  const basedOnQuery = await this.createQuery({
2173
- ...basicQuery(datasource._id!),
1945
+ ...basicQuery(datasource._id),
2174
1946
  fields: {
2175
1947
  path: "www.google.com",
2176
1948
  },
@@ -2198,7 +1970,7 @@ class TestConfiguration {
2198
1970
  datasource: any,
2199
1971
  fields: any,
2200
1972
  params: any,
2201
- verb?: string
1973
+ verb: string
2202
1974
  ) {
2203
1975
  return request
2204
1976
  .post(`/api/queries/preview`)
@@ -2245,7 +2017,7 @@ export = TestConfiguration
2245
2017
  <div class='footer quiet pad2 space-top1 center small'>
2246
2018
  Code coverage generated by
2247
2019
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
2248
- at Tue Feb 14 2023 18:11:53 GMT+0000 (Coordinated Universal Time)
2020
+ at Wed Feb 15 2023 12:56:20 GMT+0000 (Coordinated Universal Time)
2249
2021
  </div>
2250
2022
  <script src="../../../prettify.js"></script>
2251
2023
  <script>