@ministryofjustice/hmpps-digital-prison-reporting-frontend 4.17.0 → 4.17.1

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 (168) hide show
  1. package/dpr/components/_catalogue/catalogue-list/utils.js +1 -1
  2. package/dpr/components/_catalogue/catalogue-list/utils.js.map +3 -3
  3. package/dpr/components/_catalogue/catalogue-list/utils.ts +4 -5
  4. package/dpr/components/_charts/chart/Buckets.js +1 -1
  5. package/dpr/components/_charts/chart/Buckets.js.map +3 -3
  6. package/dpr/components/_charts/chart/Buckets.ts +44 -36
  7. package/dpr/components/_charts/chart/heatmap/HeatmapChart.js +1 -1
  8. package/dpr/components/_charts/chart/heatmap/HeatmapChart.js.map +2 -2
  9. package/dpr/components/_charts/chart/heatmap/HeatmapChart.ts +22 -14
  10. package/dpr/components/_charts/chart/heatmap/types.js +2 -0
  11. package/dpr/components/_charts/chart/heatmap/types.js.map +7 -0
  12. package/dpr/components/_charts/chart/heatmap/types.ts +6 -0
  13. package/dpr/components/_charts/utils.js +1 -1
  14. package/dpr/components/_charts/utils.js.map +3 -3
  15. package/dpr/components/_charts/utils.test.ts +10 -7
  16. package/dpr/components/_charts/utils.ts +57 -50
  17. package/dpr/components/_dashboards/dashboard/view.njk +1 -1
  18. package/dpr/components/_dashboards/dashboard-list/utils.js +1 -1
  19. package/dpr/components/_dashboards/dashboard-list/utils.js.map +2 -2
  20. package/dpr/components/_dashboards/dashboard-list/utils.test.ts +3 -3
  21. package/dpr/components/_dashboards/dashboard-list/utils.ts +16 -12
  22. package/dpr/components/_dashboards/dashboard-section/view.njk +1 -1
  23. package/dpr/components/_dashboards/dashboard-visualisation/DashboardVisualisation.js +2 -0
  24. package/dpr/components/_dashboards/dashboard-visualisation/DashboardVisualisation.js.map +7 -0
  25. package/dpr/components/_dashboards/dashboard-visualisation/DashboardVisualisation.ts +40 -0
  26. package/dpr/components/_dashboards/dashboard-visualisation/types.js +2 -0
  27. package/dpr/components/_dashboards/dashboard-visualisation/types.js.map +7 -0
  28. package/dpr/components/_dashboards/dashboard-visualisation/types.ts +102 -0
  29. package/dpr/components/_dashboards/dashboard-visualisation/view.njk +1 -1
  30. package/dpr/components/_dashboards/scorecard/Scorecard.js +1 -1
  31. package/dpr/components/_dashboards/scorecard/Scorecard.js.map +2 -2
  32. package/dpr/components/_dashboards/scorecard/Scorecard.ts +37 -29
  33. package/dpr/components/_dashboards/scorecard/types.js.map +1 -1
  34. package/dpr/components/_dashboards/scorecard/types.ts +1 -0
  35. package/dpr/components/_dashboards/scorecard/utils.js +1 -1
  36. package/dpr/components/_dashboards/scorecard/utils.js.map +2 -2
  37. package/dpr/components/_dashboards/scorecard/utils.test.ts +13 -4
  38. package/dpr/components/_dashboards/scorecard/utils.ts +6 -5
  39. package/dpr/components/_dashboards/scorecard/view.njk +6 -5
  40. package/dpr/components/_dashboards/scorecard-group/view.njk +4 -4
  41. package/dpr/components/_reports/report-actions/types.d.js.map +1 -1
  42. package/dpr/components/_reports/report-actions/types.d.ts +1 -1
  43. package/dpr/components/_reports/report-heading/view.njk +1 -1
  44. package/dpr/data/dashboardClient.js +1 -1
  45. package/dpr/data/dashboardClient.js.map +2 -2
  46. package/dpr/data/dashboardClient.ts +8 -7
  47. package/dpr/data/reportingClient.js +1 -1
  48. package/dpr/data/reportingClient.js.map +1 -1
  49. package/dpr/data/reportingClient.ts +1 -1
  50. package/dpr/middleware/reportAuthoriser.js +1 -1
  51. package/dpr/middleware/reportAuthoriser.js.map +3 -3
  52. package/dpr/middleware/reportAuthoriser.ts +9 -20
  53. package/dpr/routes/journeys/download-report/controller.js +1 -1
  54. package/dpr/routes/journeys/download-report/controller.js.map +3 -3
  55. package/dpr/routes/journeys/download-report/controller.ts +4 -1
  56. package/dpr/routes/journeys/download-report/request-download/form/submitted/tests.cy.js +1 -1
  57. package/dpr/routes/journeys/download-report/request-download/form/submitted/tests.cy.js.map +2 -2
  58. package/dpr/routes/journeys/download-report/request-download/form/submitted/tests.cy.ts +1 -0
  59. package/dpr/routes/journeys/download-report/request-download/form/tests.cy.js +1 -1
  60. package/dpr/routes/journeys/download-report/request-download/form/tests.cy.js.map +2 -2
  61. package/dpr/routes/journeys/download-report/request-download/form/tests.cy.ts +1 -0
  62. package/dpr/routes/journeys/download-report/tests.cy.js +1 -1
  63. package/dpr/routes/journeys/download-report/tests.cy.js.map +2 -2
  64. package/dpr/routes/journeys/download-report/tests.cy.ts +2 -8
  65. package/dpr/routes/journeys/download-report/utils.js +1 -1
  66. package/dpr/routes/journeys/download-report/utils.js.map +3 -3
  67. package/dpr/routes/journeys/download-report/utils.ts +10 -7
  68. package/dpr/routes/journeys/my-reports/bookmarks/list/tests.cy.js +1 -1
  69. package/dpr/routes/journeys/my-reports/bookmarks/list/tests.cy.js.map +2 -2
  70. package/dpr/routes/journeys/my-reports/bookmarks/list/tests.cy.ts +1 -0
  71. package/dpr/routes/journeys/my-reports/bookmarks/tests.cy.js +1 -1
  72. package/dpr/routes/journeys/my-reports/bookmarks/tests.cy.js.map +3 -3
  73. package/dpr/routes/journeys/my-reports/bookmarks/tests.cy.ts +5 -14
  74. package/dpr/routes/journeys/my-reports/bookmarks/utils.js +1 -1
  75. package/dpr/routes/journeys/my-reports/bookmarks/utils.js.map +3 -3
  76. package/dpr/routes/journeys/my-reports/bookmarks/utils.ts +11 -5
  77. package/dpr/routes/journeys/my-reports/recently-viewed/list/tests.cy.js +1 -1
  78. package/dpr/routes/journeys/my-reports/recently-viewed/list/tests.cy.js.map +3 -3
  79. package/dpr/routes/journeys/my-reports/recently-viewed/list/tests.cy.ts +4 -7
  80. package/dpr/routes/journeys/my-reports/requested-reports/list/tests.cy.js +1 -1
  81. package/dpr/routes/journeys/my-reports/requested-reports/list/tests.cy.js.map +2 -2
  82. package/dpr/routes/journeys/my-reports/requested-reports/list/tests.cy.ts +1 -0
  83. package/dpr/routes/journeys/request-missing-report/form/tests.cy.js +1 -1
  84. package/dpr/routes/journeys/request-missing-report/form/tests.cy.js.map +2 -2
  85. package/dpr/routes/journeys/request-missing-report/form/tests.cy.ts +1 -0
  86. package/dpr/routes/journeys/request-missing-report/tests.cy.js +1 -1
  87. package/dpr/routes/journeys/request-missing-report/tests.cy.js.map +2 -2
  88. package/dpr/routes/journeys/request-missing-report/tests.cy.ts +3 -5
  89. package/dpr/routes/journeys/request-report/filters/tests.cy.js +1 -1
  90. package/dpr/routes/journeys/request-report/filters/tests.cy.js.map +3 -3
  91. package/dpr/routes/journeys/request-report/filters/tests.cy.ts +3 -6
  92. package/dpr/routes/journeys/request-report/filters/utils.js +1 -1
  93. package/dpr/routes/journeys/request-report/filters/utils.js.map +2 -2
  94. package/dpr/routes/journeys/request-report/filters/utils.ts +2 -3
  95. package/dpr/routes/journeys/request-report/status/tests.cy.js +1 -1
  96. package/dpr/routes/journeys/request-report/status/tests.cy.js.map +2 -2
  97. package/dpr/routes/journeys/request-report/status/tests.cy.ts +2 -7
  98. package/dpr/routes/journeys/request-report/tests.cy.js +1 -1
  99. package/dpr/routes/journeys/request-report/tests.cy.js.map +3 -3
  100. package/dpr/routes/journeys/request-report/tests.cy.ts +5 -21
  101. package/dpr/routes/journeys/view-report/async/controller.js.map +2 -2
  102. package/dpr/routes/journeys/view-report/async/controller.ts +2 -2
  103. package/dpr/routes/journeys/view-report/async/dashboard/tests.cy.js +1 -1
  104. package/dpr/routes/journeys/view-report/async/dashboard/tests.cy.js.map +2 -2
  105. package/dpr/routes/journeys/view-report/async/dashboard/tests.cy.ts +2 -10
  106. package/dpr/routes/journeys/view-report/async/dashboard/utils.js +1 -1
  107. package/dpr/routes/journeys/view-report/async/dashboard/utils.js.map +3 -3
  108. package/dpr/routes/journeys/view-report/async/dashboard/utils.ts +100 -95
  109. package/dpr/routes/journeys/view-report/async/report/controller.js +1 -1
  110. package/dpr/routes/journeys/view-report/async/report/controller.js.map +3 -3
  111. package/dpr/routes/journeys/view-report/async/report/controller.ts +4 -6
  112. package/dpr/routes/journeys/view-report/async/report/tests.cy.js +1 -1
  113. package/dpr/routes/journeys/view-report/async/report/tests.cy.js.map +2 -2
  114. package/dpr/routes/journeys/view-report/async/report/tests.cy.ts +8 -19
  115. package/dpr/routes/journeys/view-report/async/report/types.js +2 -0
  116. package/dpr/routes/journeys/view-report/async/report/types.js.map +7 -0
  117. package/dpr/routes/journeys/view-report/async/report/types.ts +31 -0
  118. package/dpr/routes/journeys/view-report/async/report/utils.js +1 -1
  119. package/dpr/routes/journeys/view-report/async/report/utils.js.map +3 -3
  120. package/dpr/routes/journeys/view-report/async/report/utils.ts +173 -136
  121. package/dpr/routes/journeys/view-report/sync/tests.cy.js +1 -1
  122. package/dpr/routes/journeys/view-report/sync/tests.cy.js.map +3 -3
  123. package/dpr/routes/journeys/view-report/sync/tests.cy.ts +3 -5
  124. package/dpr/services/dashboardService.js +1 -1
  125. package/dpr/services/dashboardService.js.map +2 -2
  126. package/dpr/services/dashboardService.ts +7 -5
  127. package/dpr/services/productCollection/productCollectionService.js +1 -1
  128. package/dpr/services/productCollection/productCollectionService.js.map +2 -2
  129. package/dpr/services/productCollection/productCollectionService.ts +3 -3
  130. package/dpr/services/reportingService.js +1 -1
  131. package/dpr/services/reportingService.js.map +1 -1
  132. package/dpr/services/reportingService.ts +1 -1
  133. package/dpr/types/AsyncReportUtils.js.map +1 -1
  134. package/dpr/types/AsyncReportUtils.ts +3 -4
  135. package/dpr/types/Charts.js +1 -1
  136. package/dpr/types/Charts.js.map +3 -3
  137. package/dpr/types/Charts.ts +0 -82
  138. package/dpr/types/Metrics.js +1 -1
  139. package/dpr/types/Metrics.js.map +1 -1
  140. package/dpr/types/Metrics.ts +7 -0
  141. package/dpr/types/ReportQuery.js +1 -1
  142. package/dpr/types/ReportQuery.js.map +3 -3
  143. package/dpr/types/ReportQuery.ts +24 -15
  144. package/dpr/types/Services.d.js +1 -1
  145. package/dpr/types/Services.d.js.map +1 -1
  146. package/dpr/types/Services.d.ts +2 -0
  147. package/dpr/types/api.d.js.map +1 -1
  148. package/dpr/types/api.d.ts +14 -16
  149. package/dpr/utils/Personalisation/personalisationUtils.js +1 -1
  150. package/dpr/utils/Personalisation/personalisationUtils.js.map +3 -3
  151. package/dpr/utils/Personalisation/personalisationUtils.ts +15 -6
  152. package/dpr/utils/UserStoreItemBuilder.js +1 -1
  153. package/dpr/utils/UserStoreItemBuilder.js.map +1 -1
  154. package/dpr/utils/UserStoreItemBuilder.ts +2 -2
  155. package/dpr/utils/datasetHelper.js +1 -1
  156. package/dpr/utils/datasetHelper.js.map +3 -3
  157. package/dpr/utils/datasetHelper.test.ts +11 -11
  158. package/dpr/utils/datasetHelper.ts +23 -8
  159. package/dpr/utils/logger.js +1 -1
  160. package/dpr/utils/logger.js.map +3 -3
  161. package/dpr/utils/logger.ts +6 -1
  162. package/package.json +2 -1
  163. package/dpr/components/_charts/chart/DashboardVisualisation.js +0 -2
  164. package/dpr/components/_charts/chart/DashboardVisualisation.js.map +0 -7
  165. package/dpr/components/_charts/chart/DashboardVisualisation.ts +0 -43
  166. package/dpr/components/_dashboards/dashboard/types.js +0 -2
  167. package/dpr/components/_dashboards/dashboard/types.js.map +0 -7
  168. package/dpr/components/_dashboards/dashboard/types.ts +0 -120
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../src/dpr/routes/journeys/my-reports/requested-reports/list/tests.cy.ts"],
4
- "sourcesContent": ["context('Requested report list', () => {\n const path = '/embedded/platform/dpr/my-reports/requested-reports/list'\n\n before(() => {\n cy.task('resetStubs')\n cy.task('resetRedis')\n cy.task('stubDefinitions')\n })\n\n it('is accessible', () => {\n cy.visit(path)\n cy.injectAxe()\n cy.checkA11y()\n })\n})\n"],
5
- "mappings": "AAAA,QAAQ,wBAAyB,IAAM,CACrC,MAAMA,EAAO,2DAEb,OAAO,IAAM,CACX,GAAG,KAAK,YAAY,EACpB,GAAG,KAAK,YAAY,EACpB,GAAG,KAAK,iBAAiB,CAC3B,CAAC,EAED,GAAG,gBAAiB,IAAM,CACxB,GAAG,MAAMA,CAAI,EACb,GAAG,UAAU,EACb,GAAG,UAAU,CACf,CAAC,CACH,CAAC",
4
+ "sourcesContent": ["context('Requested report list', () => {\n const path = '/embedded/platform/dpr/my-reports/requested-reports/list'\n\n before(() => {\n cy.task('resetStubs')\n cy.task('resetRedis')\n cy.task('stubDefinitions')\n cy.task('stubSingleSummaries')\n })\n\n it('is accessible', () => {\n cy.visit(path)\n cy.injectAxe()\n cy.checkA11y()\n })\n})\n"],
5
+ "mappings": "AAAA,QAAQ,wBAAyB,IAAM,CACrC,MAAMA,EAAO,2DAEb,OAAO,IAAM,CACX,GAAG,KAAK,YAAY,EACpB,GAAG,KAAK,YAAY,EACpB,GAAG,KAAK,iBAAiB,EACzB,GAAG,KAAK,qBAAqB,CAC/B,CAAC,EAED,GAAG,gBAAiB,IAAM,CACxB,GAAG,MAAMA,CAAI,EACb,GAAG,UAAU,EACb,GAAG,UAAU,CACf,CAAC,CACH,CAAC",
6
6
  "names": ["path"]
7
7
  }
@@ -5,6 +5,7 @@ context('Requested report list', () => {
5
5
  cy.task('resetStubs')
6
6
  cy.task('resetRedis')
7
7
  cy.task('stubDefinitions')
8
+ cy.task('stubSingleSummaries')
8
9
  })
9
10
 
10
11
  it('is accessible', () => {
@@ -1,2 +1,2 @@
1
- context("Request missing report",()=>{const e="/embedded/platform/dpr/request-missing-report/feature-testing/feature-testing-missing-1/form";beforeEach(()=>{cy.task("resetStubs"),cy.task("resetRedis"),cy.task("stubDefinitions"),cy.task("stubGetFeatureTestingMissing")}),it("should show the form, and on successful submission, redirect to the success submitted page",()=>{cy.task("stubSubmitMissingRequest"),cy.visit(e),cy.injectAxe(),cy.checkA11y(),cy.findByRole("textbox",{name:/Request this report/}).should("be.visible"),cy.findByRole("button",{name:/Submit/}).click(),cy.findByRole("link",{name:/Please fill out the reason for needing the report/}).should("be.visible").click(),cy.findByRole("textbox",{name:/Request this report/}).should("be.focused"),cy.findAllByRole("paragraph").contains(/Please fill out the reason for needing the report/).should("be.visible")})});
1
+ context("Request missing report",()=>{const e="/embedded/platform/dpr/request-missing-report/feature-testing/feature-testing-missing-1/form";beforeEach(()=>{cy.task("resetStubs"),cy.task("resetRedis"),cy.task("stubDefinitions"),cy.task("stubSingleSummaries"),cy.task("stubGetFeatureTestingMissing")}),it("should show the form, and on successful submission, redirect to the success submitted page",()=>{cy.task("stubSubmitMissingRequest"),cy.visit(e),cy.injectAxe(),cy.checkA11y(),cy.findByRole("textbox",{name:/Request this report/}).should("be.visible"),cy.findByRole("button",{name:/Submit/}).click(),cy.findByRole("link",{name:/Please fill out the reason for needing the report/}).should("be.visible").click(),cy.findByRole("textbox",{name:/Request this report/}).should("be.focused"),cy.findAllByRole("paragraph").contains(/Please fill out the reason for needing the report/).should("be.visible")})});
2
2
  //# sourceMappingURL=tests.cy.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../src/dpr/routes/journeys/request-missing-report/form/tests.cy.ts"],
4
- "sourcesContent": ["context('Request missing report', () => {\n const path = '/embedded/platform/dpr/request-missing-report/feature-testing/feature-testing-missing-1/form'\n\n beforeEach(() => {\n cy.task('resetStubs')\n cy.task('resetRedis')\n cy.task('stubDefinitions')\n cy.task('stubGetFeatureTestingMissing')\n })\n\n it('should show the form, and on successful submission, redirect to the success submitted page', () => {\n cy.task('stubSubmitMissingRequest')\n cy.visit(path)\n cy.injectAxe()\n cy.checkA11y()\n cy.findByRole('textbox', { name: /Request this report/ }).should('be.visible')\n cy.findByRole('button', { name: /Submit/ }).click()\n cy.findByRole('link', { name: /Please fill out the reason for needing the report/ })\n .should('be.visible')\n .click()\n cy.findByRole('textbox', { name: /Request this report/ }).should('be.focused')\n cy.findAllByRole('paragraph')\n .contains(/Please fill out the reason for needing the report/)\n .should('be.visible')\n })\n})\n"],
5
- "mappings": "AAAA,QAAQ,yBAA0B,IAAM,CACtC,MAAMA,EAAO,+FAEb,WAAW,IAAM,CACf,GAAG,KAAK,YAAY,EACpB,GAAG,KAAK,YAAY,EACpB,GAAG,KAAK,iBAAiB,EACzB,GAAG,KAAK,8BAA8B,CACxC,CAAC,EAED,GAAG,6FAA8F,IAAM,CACrG,GAAG,KAAK,0BAA0B,EAClC,GAAG,MAAMA,CAAI,EACb,GAAG,UAAU,EACb,GAAG,UAAU,EACb,GAAG,WAAW,UAAW,CAAE,KAAM,qBAAsB,CAAC,EAAE,OAAO,YAAY,EAC7E,GAAG,WAAW,SAAU,CAAE,KAAM,QAAS,CAAC,EAAE,MAAM,EAClD,GAAG,WAAW,OAAQ,CAAE,KAAM,mDAAoD,CAAC,EAChF,OAAO,YAAY,EACnB,MAAM,EACT,GAAG,WAAW,UAAW,CAAE,KAAM,qBAAsB,CAAC,EAAE,OAAO,YAAY,EAC7E,GAAG,cAAc,WAAW,EACzB,SAAS,mDAAmD,EAC5D,OAAO,YAAY,CACxB,CAAC,CACH,CAAC",
4
+ "sourcesContent": ["context('Request missing report', () => {\n const path = '/embedded/platform/dpr/request-missing-report/feature-testing/feature-testing-missing-1/form'\n\n beforeEach(() => {\n cy.task('resetStubs')\n cy.task('resetRedis')\n cy.task('stubDefinitions')\n cy.task('stubSingleSummaries')\n cy.task('stubGetFeatureTestingMissing')\n })\n\n it('should show the form, and on successful submission, redirect to the success submitted page', () => {\n cy.task('stubSubmitMissingRequest')\n cy.visit(path)\n cy.injectAxe()\n cy.checkA11y()\n cy.findByRole('textbox', { name: /Request this report/ }).should('be.visible')\n cy.findByRole('button', { name: /Submit/ }).click()\n cy.findByRole('link', { name: /Please fill out the reason for needing the report/ })\n .should('be.visible')\n .click()\n cy.findByRole('textbox', { name: /Request this report/ }).should('be.focused')\n cy.findAllByRole('paragraph')\n .contains(/Please fill out the reason for needing the report/)\n .should('be.visible')\n })\n})\n"],
5
+ "mappings": "AAAA,QAAQ,yBAA0B,IAAM,CACtC,MAAMA,EAAO,+FAEb,WAAW,IAAM,CACf,GAAG,KAAK,YAAY,EACpB,GAAG,KAAK,YAAY,EACpB,GAAG,KAAK,iBAAiB,EACzB,GAAG,KAAK,qBAAqB,EAC7B,GAAG,KAAK,8BAA8B,CACxC,CAAC,EAED,GAAG,6FAA8F,IAAM,CACrG,GAAG,KAAK,0BAA0B,EAClC,GAAG,MAAMA,CAAI,EACb,GAAG,UAAU,EACb,GAAG,UAAU,EACb,GAAG,WAAW,UAAW,CAAE,KAAM,qBAAsB,CAAC,EAAE,OAAO,YAAY,EAC7E,GAAG,WAAW,SAAU,CAAE,KAAM,QAAS,CAAC,EAAE,MAAM,EAClD,GAAG,WAAW,OAAQ,CAAE,KAAM,mDAAoD,CAAC,EAChF,OAAO,YAAY,EACnB,MAAM,EACT,GAAG,WAAW,UAAW,CAAE,KAAM,qBAAsB,CAAC,EAAE,OAAO,YAAY,EAC7E,GAAG,cAAc,WAAW,EACzB,SAAS,mDAAmD,EAC5D,OAAO,YAAY,CACxB,CAAC,CACH,CAAC",
6
6
  "names": ["path"]
7
7
  }
@@ -5,6 +5,7 @@ context('Request missing report', () => {
5
5
  cy.task('resetStubs')
6
6
  cy.task('resetRedis')
7
7
  cy.task('stubDefinitions')
8
+ cy.task('stubSingleSummaries')
8
9
  cy.task('stubGetFeatureTestingMissing')
9
10
  })
10
11
 
@@ -1,2 +1,2 @@
1
- var e=require("../../../../../cypress-tests/cypressUtils");context("Request missing report",()=>{const t="/embedded/platform/";beforeEach(()=>{cy.task("resetStubs"),cy.task("resetRedis"),cy.task("stubDefinitions"),cy.task("stubGetProductCollections"),cy.task("stubGetFeatureTestingMissing"),cy.visit(t),cy.findByLabelText(/Reports catalogue.*/i).within(()=>{cy.findByRole("row",{name:(i,s)=>s.textContent.includes("Missing Report 1")}).within(()=>{cy.findByRole("link",{name:"Request report"}).click()})}),(0,e.checkA11y)()}),describe("Request form page",()=>{it("should show the form, and on successful submission, redirect to the success submitted page",()=>{cy.task("stubMissingRequestSubmitSuccess"),cy.findByRole("textbox",{name:/Request this report/}).should("be.visible").type("abcd"),cy.findByRole("button",{name:/Submit/}).click(),cy.findByRole("heading",{name:/We've received your request for report Missing Report 1/}).should("be.visible"),(0,e.checkA11y)()}),it("should show the form, and on failed submission, redirect to the error page",()=>{cy.task("stubMissingRequestSubmitFail"),cy.findByRole("textbox",{name:/Request this report/}).type("a reason"),cy.findByRole("button",{name:/Submit/}).click(),cy.findByRole("heading",{name:/Sorry, there is a problem with the service/}).should("be.visible"),(0,e.checkA11y)()})})});
1
+ var e=require("../../../../../cypress-tests/cypressUtils");context("Request missing report",()=>{const t="/embedded/platform/";beforeEach(()=>{(0,e.stubBaseTasks)(),(0,e.stubDefinitionsTasks)(),cy.task("stubGetFeatureTestingMissing"),cy.visit(t),cy.findByLabelText(/Reports catalogue.*/i).within(()=>{cy.findByRole("row",{name:(i,s)=>s.textContent.includes("Missing Report 1")}).within(()=>{cy.findByRole("link",{name:"Request report"}).click()})}),(0,e.checkA11y)()}),describe("Request form page",()=>{it("should show the form, and on successful submission, redirect to the success submitted page",()=>{cy.task("stubMissingRequestSubmitSuccess"),cy.findByRole("textbox",{name:/Request this report/}).should("be.visible").type("abcd"),cy.findByRole("button",{name:/Submit/}).click(),cy.findByRole("heading",{name:/We've received your request for report Missing Report 1/}).should("be.visible"),(0,e.checkA11y)()}),it("should show the form, and on failed submission, redirect to the error page",()=>{cy.task("stubMissingRequestSubmitFail"),cy.findByRole("textbox",{name:/Request this report/}).type("a reason"),cy.findByRole("button",{name:/Submit/}).click(),cy.findByRole("heading",{name:/Sorry, there is a problem with the service/}).should("be.visible"),(0,e.checkA11y)()})})});
2
2
  //# sourceMappingURL=tests.cy.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/dpr/routes/journeys/request-missing-report/tests.cy.ts"],
4
- "sourcesContent": ["import { checkA11y } from '../../../../../cypress-tests/cypressUtils'\n\ncontext('Request missing report', () => {\n const path = '/embedded/platform/'\n\n beforeEach(() => {\n cy.task('resetStubs')\n cy.task('resetRedis')\n cy.task('stubDefinitions')\n cy.task('stubGetProductCollections')\n cy.task('stubGetFeatureTestingMissing')\n cy.visit(path)\n cy.findByLabelText(/Reports catalogue.*/i).within(() => {\n cy.findByRole('row', {\n name: (_, element) => {\n return element.textContent.includes('Missing Report 1')\n },\n }).within(() => {\n cy.findByRole('link', { name: 'Request report' }).click()\n })\n })\n checkA11y()\n })\n\n describe('Request form page', () => {\n it('should show the form, and on successful submission, redirect to the success submitted page', () => {\n cy.task('stubMissingRequestSubmitSuccess')\n cy.findByRole('textbox', { name: /Request this report/ })\n .should('be.visible')\n .type('abcd')\n cy.findByRole('button', { name: /Submit/ }).click()\n cy.findByRole('heading', { name: /We've received your request for report Missing Report 1/ }).should('be.visible')\n checkA11y()\n })\n\n it('should show the form, and on failed submission, redirect to the error page', () => {\n cy.task('stubMissingRequestSubmitFail')\n cy.findByRole('textbox', { name: /Request this report/ }).type('a reason')\n cy.findByRole('button', { name: /Submit/ }).click()\n cy.findByRole('heading', { name: /Sorry, there is a problem with the service/ }).should('be.visible')\n checkA11y()\n })\n })\n})\n"],
5
- "mappings": "AAAA,IAAAA,EAA0B,qDAE1B,QAAQ,yBAA0B,IAAM,CACtC,MAAMC,EAAO,sBAEb,WAAW,IAAM,CACf,GAAG,KAAK,YAAY,EACpB,GAAG,KAAK,YAAY,EACpB,GAAG,KAAK,iBAAiB,EACzB,GAAG,KAAK,2BAA2B,EACnC,GAAG,KAAK,8BAA8B,EACtC,GAAG,MAAMA,CAAI,EACb,GAAG,gBAAgB,sBAAsB,EAAE,OAAO,IAAM,CACtD,GAAG,WAAW,MAAO,CACnB,KAAM,CAACC,EAAGC,IACDA,EAAQ,YAAY,SAAS,kBAAkB,CAE1D,CAAC,EAAE,OAAO,IAAM,CACd,GAAG,WAAW,OAAQ,CAAE,KAAM,gBAAiB,CAAC,EAAE,MAAM,CAC1D,CAAC,CACH,CAAC,KACD,aAAU,CACZ,CAAC,EAED,SAAS,oBAAqB,IAAM,CAClC,GAAG,6FAA8F,IAAM,CACrG,GAAG,KAAK,iCAAiC,EACzC,GAAG,WAAW,UAAW,CAAE,KAAM,qBAAsB,CAAC,EACrD,OAAO,YAAY,EACnB,KAAK,MAAM,EACd,GAAG,WAAW,SAAU,CAAE,KAAM,QAAS,CAAC,EAAE,MAAM,EAClD,GAAG,WAAW,UAAW,CAAE,KAAM,yDAA0D,CAAC,EAAE,OAAO,YAAY,KACjH,aAAU,CACZ,CAAC,EAED,GAAG,6EAA8E,IAAM,CACrF,GAAG,KAAK,8BAA8B,EACtC,GAAG,WAAW,UAAW,CAAE,KAAM,qBAAsB,CAAC,EAAE,KAAK,UAAU,EACzE,GAAG,WAAW,SAAU,CAAE,KAAM,QAAS,CAAC,EAAE,MAAM,EAClD,GAAG,WAAW,UAAW,CAAE,KAAM,4CAA6C,CAAC,EAAE,OAAO,YAAY,KACpG,aAAU,CACZ,CAAC,CACH,CAAC,CACH,CAAC",
4
+ "sourcesContent": ["import { checkA11y, stubBaseTasks, stubDefinitionsTasks } from '../../../../../cypress-tests/cypressUtils'\n\ncontext('Request missing report', () => {\n const path = '/embedded/platform/'\n\n beforeEach(() => {\n stubBaseTasks()\n stubDefinitionsTasks()\n cy.task('stubGetFeatureTestingMissing')\n cy.visit(path)\n cy.findByLabelText(/Reports catalogue.*/i).within(() => {\n cy.findByRole('row', {\n name: (_, element) => {\n return element.textContent.includes('Missing Report 1')\n },\n }).within(() => {\n cy.findByRole('link', { name: 'Request report' }).click()\n })\n })\n checkA11y()\n })\n\n describe('Request form page', () => {\n it('should show the form, and on successful submission, redirect to the success submitted page', () => {\n cy.task('stubMissingRequestSubmitSuccess')\n cy.findByRole('textbox', { name: /Request this report/ })\n .should('be.visible')\n .type('abcd')\n cy.findByRole('button', { name: /Submit/ }).click()\n cy.findByRole('heading', { name: /We've received your request for report Missing Report 1/ }).should('be.visible')\n checkA11y()\n })\n\n it('should show the form, and on failed submission, redirect to the error page', () => {\n cy.task('stubMissingRequestSubmitFail')\n cy.findByRole('textbox', { name: /Request this report/ }).type('a reason')\n cy.findByRole('button', { name: /Submit/ }).click()\n cy.findByRole('heading', { name: /Sorry, there is a problem with the service/ }).should('be.visible')\n checkA11y()\n })\n })\n})\n"],
5
+ "mappings": "AAAA,IAAAA,EAA+D,qDAE/D,QAAQ,yBAA0B,IAAM,CACtC,MAAMC,EAAO,sBAEb,WAAW,IAAM,IACf,iBAAc,KACd,wBAAqB,EACrB,GAAG,KAAK,8BAA8B,EACtC,GAAG,MAAMA,CAAI,EACb,GAAG,gBAAgB,sBAAsB,EAAE,OAAO,IAAM,CACtD,GAAG,WAAW,MAAO,CACnB,KAAM,CAACC,EAAGC,IACDA,EAAQ,YAAY,SAAS,kBAAkB,CAE1D,CAAC,EAAE,OAAO,IAAM,CACd,GAAG,WAAW,OAAQ,CAAE,KAAM,gBAAiB,CAAC,EAAE,MAAM,CAC1D,CAAC,CACH,CAAC,KACD,aAAU,CACZ,CAAC,EAED,SAAS,oBAAqB,IAAM,CAClC,GAAG,6FAA8F,IAAM,CACrG,GAAG,KAAK,iCAAiC,EACzC,GAAG,WAAW,UAAW,CAAE,KAAM,qBAAsB,CAAC,EACrD,OAAO,YAAY,EACnB,KAAK,MAAM,EACd,GAAG,WAAW,SAAU,CAAE,KAAM,QAAS,CAAC,EAAE,MAAM,EAClD,GAAG,WAAW,UAAW,CAAE,KAAM,yDAA0D,CAAC,EAAE,OAAO,YAAY,KACjH,aAAU,CACZ,CAAC,EAED,GAAG,6EAA8E,IAAM,CACrF,GAAG,KAAK,8BAA8B,EACtC,GAAG,WAAW,UAAW,CAAE,KAAM,qBAAsB,CAAC,EAAE,KAAK,UAAU,EACzE,GAAG,WAAW,SAAU,CAAE,KAAM,QAAS,CAAC,EAAE,MAAM,EAClD,GAAG,WAAW,UAAW,CAAE,KAAM,4CAA6C,CAAC,EAAE,OAAO,YAAY,KACpG,aAAU,CACZ,CAAC,CACH,CAAC,CACH,CAAC",
6
6
  "names": ["import_cypressUtils", "path", "_", "element"]
7
7
  }
@@ -1,13 +1,11 @@
1
- import { checkA11y } from '../../../../../cypress-tests/cypressUtils'
1
+ import { checkA11y, stubBaseTasks, stubDefinitionsTasks } from '../../../../../cypress-tests/cypressUtils'
2
2
 
3
3
  context('Request missing report', () => {
4
4
  const path = '/embedded/platform/'
5
5
 
6
6
  beforeEach(() => {
7
- cy.task('resetStubs')
8
- cy.task('resetRedis')
9
- cy.task('stubDefinitions')
10
- cy.task('stubGetProductCollections')
7
+ stubBaseTasks()
8
+ stubDefinitionsTasks()
11
9
  cy.task('stubGetFeatureTestingMissing')
12
10
  cy.visit(path)
13
11
  cy.findByLabelText(/Reports catalogue.*/i).within(() => {
@@ -1,2 +1,2 @@
1
- describe("Request a report",()=>{const y="/embedded/platform/dpr/request-report/report/request-examples/request-example-success/filters",u="/embedded/platform/dpr/request-report/report/feature-testing/feature-testing-filter-order/filters";let c,s,n,d,r,o,f;const t=()=>{for(let e=0;e<5;e+=1)cy.get("#dpr-selected-filters > a:nth-child(1)").click(1,1)},a=()=>{cy.findByRole("combobox",{name:"Field 2"}).select("value2.2"),cy.findByRole("textbox",{name:"From"}).type("1/2/2003"),cy.findByRole("textbox",{name:"To"}).type("4/5/2007"),cy.findByRole("combobox",{name:"Field 4"}).type("Inigo Montoya"),cy.findByRole("textbox",{name:"Field 6"}).type("Value 6.1"),cy.findByRole("textbox",{name:"Field 7"}).type("05/05/2005"),cy.findByRole("checkbox",{name:"Value 8.1"}).check(),cy.findByRole("checkbox",{name:"Value 8.2"}).check(),cy.findByRole("checkbox",{name:"Value 8.3"}).check(),cy.findByRole("checkbox",{name:"Value 8.4"}).check()};before(()=>{cy.task("resetStubs"),cy.task("resetRedis"),cy.task("stubDefinitions"),cy.task("stubDefinitionRequestExamplesSuccess"),cy.task("stubViewAsyncReportingResults"),cy.task("stubReportsFinishedStatus"),cy.task("stubRequestSuccessResult20"),cy.task("stubRequestSuccessReportTablesCount"),cy.task("stubDefinitionOrderFilters")}),beforeEach(()=>{cy.visit(y),c=cy.findByRole("combobox",{name:"Field 2"}),s=cy.findByRole("textbox",{name:"From"}),n=cy.findByRole("textbox",{name:"To"}),d=cy.findByRole("combobox",{name:"Field 4"}),r=cy.findByRole("combobox",{name:"Field 5"}),o=cy.findByRole("textbox",{name:"Field 6"}),f=cy.findByRole("textbox",{name:"Field 7"})}),it("is accessible",()=>{cy.injectAxe(),cy.checkA11y()}),context("Selected filters",()=>{it("should show the default selected filters",()=>{cy.findByLabelText(/Selected filters.*/i).within(()=>{cy.findAllByRole("link").should("have.length",6).each((e,l)=>{switch(l){case 0:cy.wrap(e).contains("Field 1"),cy.wrap(e).contains("Value 1.2");break;case 1:cy.wrap(e).contains("Field 3 start"),cy.wrap(e).contains("01/02/2003");break;case 2:cy.wrap(e).contains("Field 3 end"),cy.wrap(e).contains("04/05/2006");break;case 3:cy.wrap(e).contains("Field 7"),cy.wrap(e).contains("01/02/2005");break;case 4:cy.wrap(e).contains("Field 8"),cy.wrap(e).contains("Value 8.2, Value 8.3");break;case 5:cy.wrap(e).contains("Reset filters");break;default:break}})})}),it("should remove the selected filter and reset the input",()=>{cy.findByLabelText(/Selected filters.*/i).within(()=>{cy.findAllByRole("link").should("have.length",6)}),t(),cy.findByLabelText(/Selected filters.*/i).within(()=>{cy.findAllByRole("link").should("have.length",1)}),cy.findByRole("radio",{name:"None"}).should("not.be.checked"),cy.findByRole("radio",{name:"Value 1.1"}).should("not.be.checked"),cy.findByRole("radio",{name:"Value 1.2"}).should("not.be.checked"),cy.findByRole("radio",{name:"Value 1.3"}).should("not.be.checked"),c.find("option:selected").should("have.text","Select your option"),s.should("have.value",""),n.should("have.value",""),d.should("have.value",""),r.should("have.value",""),o.should("have.value",""),f.should("have.value","")}),it("should add selected filters when inputs values are updated",()=>{t(),cy.findByLabelText(/Selected filters.*/i).within(()=>{cy.findAllByRole("link").should("have.length",1)}),a(),cy.findByLabelText(/Selected filters.*/i).within(()=>{cy.findAllByRole("link").should("have.length",8).each((e,l)=>{switch(l){case 0:cy.wrap(e).contains("Field 2"),cy.wrap(e).contains("Value 2.2");break;case 1:cy.wrap(e).contains("Field 3 start"),cy.wrap(e).contains("01/02/2003");break;case 2:cy.wrap(e).contains("Field 3 end"),cy.wrap(e).contains("4/5/2007");break;case 3:cy.wrap(e).contains("Field 4"),cy.wrap(e).contains("Inigo Montoya");break;case 4:cy.wrap(e).contains("Field 6"),cy.wrap(e).contains("Value 6.1");break;case 5:cy.wrap(e).contains("Field 7"),cy.wrap(e).contains("05/05/2005");break;case 6:cy.wrap(e).contains("Field 8"),cy.wrap(e).contains("Value 8.1, Value 8.2, Value 8.3 + 1 more");break;default:break}})}),cy.location().should(e=>{expect(e.search).to.contain("filters.field2=value2.2"),expect(e.search).to.contain("filters.field3.start=2003-02-01"),expect(e.search).to.contain("filters.field3.end=2007-05-04"),expect(e.search).to.contain("filters.field4=Inigo+Montoya"),expect(e.search).to.contain("filters.field6=Value+6.1"),expect(e.search).to.contain("filters.field7=2005-05-05")})}),it("should reset the filters back to their DPD defaults",()=>{cy.findByLabelText(/Selected filters.*/i).within(()=>{cy.findAllByRole("link").should("have.length",6)}),t(),cy.findByLabelText(/Selected filters.*/i).within(()=>{cy.findAllByRole("link").should("have.length",1)}),cy.findByRole("link",{name:"Reset filters"}).click(),cy.findByLabelText(/Selected filters.*/i).within(()=>{cy.findAllByRole("link").should("have.length",6)})})}),context("Request query parameters",()=>{it("should correctly set the request query parameters from DPD defaults",()=>{cy.location().should(e=>{expect(e.search).to.contain("filters.field1=value1.2"),expect(e.search).to.contain("filters.field3.start=2003-02-01"),expect(e.search).to.contain("filters.field3.end=2006-05-04"),expect(e.search).to.contain("filters.field7=2005-02-01"),expect(e.search).to.contain("filters.field8=value8.2&filters.field8=value8.3")}),t(),a(),cy.location().should(e=>{expect(e.search).to.contain("filters.field2=value2.2"),expect(e.search).to.contain("filters.field3.start=2003-02-01"),expect(e.search).to.contain("filters.field3.end=2007-05-04"),expect(e.search).to.contain("filters.field4=Inigo+Montoya"),expect(e.search).to.contain("filters.field6=Value+6.1"),expect(e.search).to.contain("filters.field7=2005-05-05"),expect(e.search).to.contain("filters.field8=value8.1&filters.field8=value8.2&filters.field8=value8.3&filters.field8=value8.4")})}),it("should correctly set the request query parameters when inputs are updated",()=>{t(),a(),cy.location().should(e=>{expect(e.search).to.contain("filters.field2=value2.2"),expect(e.search).to.contain("filters.field3.start=2003-02-01"),expect(e.search).to.contain("filters.field3.end=2007-05-04"),expect(e.search).to.contain("filters.field4=Inigo+Montoya"),expect(e.search).to.contain("filters.field6=Value+6.1"),expect(e.search).to.contain("filters.field7=2005-05-05"),expect(e.search).to.contain("filters.field8=value8.1&filters.field8=value8.2&filters.field8=value8.3&filters.field8=value8.4")})})}),context("User defined defaults",()=>{it("should save the user defined defaults",()=>{t(),a(),cy.findByRole("button",{name:"Save current filter values as defaults"}).click(),cy.location().should(e=>{expect(e.search).to.contain("defaultsSaved=true")}),cy.findByRole("button",{name:"Update defaults"}).should("exist"),cy.findByRole("button",{name:"Delete defaults"}).should("exist")}),it("should pre-fill the filter values with the saved defaults next visit",()=>{cy.location().should(e=>{expect(e.search).to.contain("filters.field2=value2.2"),expect(e.search).to.contain("filters.field3.start=2003-02-01"),expect(e.search).to.contain("filters.field3.end=2007-05-04"),expect(e.search).to.contain("filters.field4=Inigo+Montoya"),expect(e.search).to.contain("filters.field6=Value+6.1"),expect(e.search).to.contain("filters.field7=2005-05-05"),expect(e.search).not.to.contain("defaultsSaved=true"),expect(e.search).to.contain("filters.field8=value8.1&filters.field8=value8.2&filters.field8=value8.3&filters.field8=value8.4")}),cy.findByRole("button",{name:"Update defaults"}).should("exist"),cy.findByRole("button",{name:"Delete defaults"}).should("exist")}),it("should update the saved defaults",()=>{cy.findByLabelText(/Selected filters.*/i).within(()=>{cy.findAllByRole("link").eq(1).click(1,1),cy.findAllByRole("link").eq(1).click(1,1),cy.findAllByRole("link").eq(1).click(1,1)}),cy.findByRole("checkbox",{name:"Value 8.2"}).uncheck(),cy.findByRole("checkbox",{name:"Value 8.3"}).uncheck(),cy.findByRole("combobox",{name:"Field 2"}).select("value2.3"),cy.findByRole("button",{name:"Update defaults"}).click(),cy.findByLabelText(/Selected filters.*/i).within(()=>{cy.findAllByRole("link").should("have.length",5)}),cy.location().should(e=>{expect(e.search).to.contain("filters.field2=value2.3"),expect(e.search).not.to.contain("filters.field3.start=2003-02-01"),expect(e.search).not.to.contain("filters.field3.end=2007-05-04"),expect(e.search).to.contain("filters.field6=Value+6.1"),expect(e.search).to.contain("filters.field7=2005-05-05"),expect(e.search).to.contain("defaultsSaved=true"),expect(e.search).not.to.contain("filters.field4=Inigo+Montoya"),expect(e.search).not.to.contain("filters.field8=value8.1&filters.field8=value8.2&filters.field8=value8.3&filters.field8=value8.4"),expect(e.search).to.contain("&filters.field8=value8.1&filters.field8=value8.4")}),cy.reload(),cy.location().should(e=>{expect(e.search).to.contain("filters.field2=value2.3"),expect(e.search).to.contain("filters.field3.start=2003-02-01"),expect(e.search).to.contain("filters.field3.end=2007-05-04"),expect(e.search).to.contain("filters.field6=Value+6.1"),expect(e.search).to.contain("filters.field7=2005-05-05"),expect(e.search).to.contain("defaultsSaved=true"),expect(e.search).not.to.contain("filters.field4=Inigo+Montoya"),expect(e.search).not.to.contain("filters.field8=value8.1&filters.field8=value8.2&filters.field8=value8.3&filters.field8=value8.4"),expect(e.search).to.contain("&filters.field8=value8.1&filters.field8=value8.4")})}),it("should reset the defaults back to the user saved defaults",()=>{cy.findByLabelText(/Selected filters.*/i).within(()=>{cy.findAllByRole("link").eq(1).click(1,1),cy.findAllByRole("link").eq(1).click(1,1),cy.findAllByRole("link").eq(1).click(1,1)}),cy.findByLabelText(/Selected filters.*/i).within(()=>{cy.findAllByRole("link").should("have.length",2)}),cy.findByRole("link",{name:"Reset filters"}).click(),cy.findByLabelText(/Selected filters.*/i).within(()=>{cy.findAllByRole("link").should("have.length",5)})}),it("should remove the save defaults",()=>{cy.findByRole("button",{name:"Delete defaults"}).click(),cy.location().should(e=>{expect(e.search).to.contain("filters.field1=value1.2"),expect(e.search).to.contain("filters.field3.start=2003-02-01"),expect(e.search).to.contain("filters.field3.end=2006-05-04"),expect(e.search).to.contain("filters.field7=2005-02-01"),expect(e.search).to.contain("filters.field8=value8.2&filters.field8=value8.3")})})}),context("Submission",()=>{it("should submit the report details in the request",()=>{cy.intercept({method:"POST",url:"/embedded/platform/dpr/request-report/report/**/**/filters?**"}).as("requestSubmit"),cy.findByRole("button",{name:/Request/}).click(),cy.wait("@requestSubmit").its("request").then(e=>{cy.wrap(e).its("body").should("include","reportId=request-examples"),cy.wrap(e).its("body").should("include","name=Successful+Report"),cy.wrap(e).its("body").should("include","reportName=Successful+Report"),cy.wrap(e).its("body").should("include","id=request-example-success")})}),it("should submit the request with the correct query params",()=>{cy.intercept({method:"POST",url:"/embedded/platform/dpr/request-report/report/**/**/filters?**"}).as("requestSubmit"),cy.findByRole("button",{name:/Request/}).click(),cy.wait("@requestSubmit").its("request").then(e=>{expect(e.query).to.have.property("filters.field1","value1.2"),expect(e.query).to.have.property("filters.field3.end","2006-05-04"),expect(e.query).to.have.property("filters.field3.start","2003-02-01"),expect(e.query).to.have.property("filters.field7","2005-02-01"),expect(e.query).to.have.property("filters.field8"),cy.wrap(e.query["filters.field8"]).should("deep.eq",["value8.2","value8.3"]),expect(e.query).to.have.property("sortColumn","field1"),expect(e.query).to.have.property("sortedAsc","false")})})}),context("Filter order",()=>{beforeEach(()=>{cy.visit(u)}),it("should order the filters correctly",()=>{cy.findAllByLabelText(/Filters/).within(()=>{cy.findAllByRole("textbox").each((e,l)=>{switch(l){case 0:cy.wrap(e).should("have.attr","display-name").then(i=>{expect(i).contains("Field 2")});break;case 1:cy.wrap(e).should("have.attr","display-name").then(i=>{expect(i).contains("Field 3")});break;case 2:cy.wrap(e).should("have.attr","display-name").then(i=>{expect(i).contains("Field 1")});break;default:break}})})})})});
1
+ var y=require("../../../../../../cypress-tests/cypressUtils");describe("Request a report",()=>{const u="/embedded/platform/dpr/request-report/report/request-examples/request-example-success/filters",h="/embedded/platform/dpr/request-report/report/feature-testing/feature-testing-filter-order/filters";let c,s,n,d,r,o,f;const t=()=>{for(let e=0;e<5;e+=1)cy.get("#dpr-selected-filters > a:nth-child(1)").click(1,1)},a=()=>{cy.findByRole("combobox",{name:"Field 2"}).select("value2.2"),cy.findByRole("textbox",{name:"From"}).type("1/2/2003"),cy.findByRole("textbox",{name:"To"}).type("4/5/2007"),cy.findByRole("combobox",{name:"Field 4"}).type("Inigo Montoya"),cy.findByRole("textbox",{name:"Field 6"}).type("Value 6.1"),cy.findByRole("textbox",{name:"Field 7"}).type("05/05/2005"),cy.findByRole("checkbox",{name:"Value 8.1"}).check(),cy.findByRole("checkbox",{name:"Value 8.2"}).check(),cy.findByRole("checkbox",{name:"Value 8.3"}).check(),cy.findByRole("checkbox",{name:"Value 8.4"}).check()};before(()=>{(0,y.executeReportStubs)(),cy.task("stubDefinitionRequestExamplesSuccess"),cy.task("stubRequestSuccessResult20"),cy.task("stubDefinitionOrderFilters")}),beforeEach(()=>{cy.visit(u),c=cy.findByRole("combobox",{name:"Field 2"}),s=cy.findByRole("textbox",{name:"From"}),n=cy.findByRole("textbox",{name:"To"}),d=cy.findByRole("combobox",{name:"Field 4"}),r=cy.findByRole("combobox",{name:"Field 5"}),o=cy.findByRole("textbox",{name:"Field 6"}),f=cy.findByRole("textbox",{name:"Field 7"})}),it("is accessible",()=>{cy.injectAxe(),cy.checkA11y()}),context("Selected filters",()=>{it("should show the default selected filters",()=>{cy.findByLabelText(/Selected filters.*/i).within(()=>{cy.findAllByRole("link").should("have.length",6).each((e,l)=>{switch(l){case 0:cy.wrap(e).contains("Field 1"),cy.wrap(e).contains("Value 1.2");break;case 1:cy.wrap(e).contains("Field 3 start"),cy.wrap(e).contains("01/02/2003");break;case 2:cy.wrap(e).contains("Field 3 end"),cy.wrap(e).contains("04/05/2006");break;case 3:cy.wrap(e).contains("Field 7"),cy.wrap(e).contains("01/02/2005");break;case 4:cy.wrap(e).contains("Field 8"),cy.wrap(e).contains("Value 8.2, Value 8.3");break;case 5:cy.wrap(e).contains("Reset filters");break;default:break}})})}),it("should remove the selected filter and reset the input",()=>{cy.findByLabelText(/Selected filters.*/i).within(()=>{cy.findAllByRole("link").should("have.length",6)}),t(),cy.findByLabelText(/Selected filters.*/i).within(()=>{cy.findAllByRole("link").should("have.length",1)}),cy.findByRole("radio",{name:"None"}).should("not.be.checked"),cy.findByRole("radio",{name:"Value 1.1"}).should("not.be.checked"),cy.findByRole("radio",{name:"Value 1.2"}).should("not.be.checked"),cy.findByRole("radio",{name:"Value 1.3"}).should("not.be.checked"),c.find("option:selected").should("have.text","Select your option"),s.should("have.value",""),n.should("have.value",""),d.should("have.value",""),r.should("have.value",""),o.should("have.value",""),f.should("have.value","")}),it("should add selected filters when inputs values are updated",()=>{t(),cy.findByLabelText(/Selected filters.*/i).within(()=>{cy.findAllByRole("link").should("have.length",1)}),a(),cy.findByLabelText(/Selected filters.*/i).within(()=>{cy.findAllByRole("link").should("have.length",8).each((e,l)=>{switch(l){case 0:cy.wrap(e).contains("Field 2"),cy.wrap(e).contains("Value 2.2");break;case 1:cy.wrap(e).contains("Field 3 start"),cy.wrap(e).contains("01/02/2003");break;case 2:cy.wrap(e).contains("Field 3 end"),cy.wrap(e).contains("4/5/2007");break;case 3:cy.wrap(e).contains("Field 4"),cy.wrap(e).contains("Inigo Montoya");break;case 4:cy.wrap(e).contains("Field 6"),cy.wrap(e).contains("Value 6.1");break;case 5:cy.wrap(e).contains("Field 7"),cy.wrap(e).contains("05/05/2005");break;case 6:cy.wrap(e).contains("Field 8"),cy.wrap(e).contains("Value 8.1, Value 8.2, Value 8.3 + 1 more");break;default:break}})}),cy.location().should(e=>{expect(e.search).to.contain("filters.field2=value2.2"),expect(e.search).to.contain("filters.field3.start=2003-02-01"),expect(e.search).to.contain("filters.field3.end=2007-05-04"),expect(e.search).to.contain("filters.field4=Inigo+Montoya"),expect(e.search).to.contain("filters.field6=Value+6.1"),expect(e.search).to.contain("filters.field7=2005-05-05")})}),it("should reset the filters back to their DPD defaults",()=>{cy.findByLabelText(/Selected filters.*/i).within(()=>{cy.findAllByRole("link").should("have.length",6)}),t(),cy.findByLabelText(/Selected filters.*/i).within(()=>{cy.findAllByRole("link").should("have.length",1)}),cy.findByRole("link",{name:"Reset filters"}).click(),cy.findByLabelText(/Selected filters.*/i).within(()=>{cy.findAllByRole("link").should("have.length",6)})})}),context("Request query parameters",()=>{it("should correctly set the request query parameters from DPD defaults",()=>{cy.location().should(e=>{expect(e.search).to.contain("filters.field1=value1.2"),expect(e.search).to.contain("filters.field3.start=2003-02-01"),expect(e.search).to.contain("filters.field3.end=2006-05-04"),expect(e.search).to.contain("filters.field7=2005-02-01"),expect(e.search).to.contain("filters.field8=value8.2&filters.field8=value8.3")}),t(),a(),cy.location().should(e=>{expect(e.search).to.contain("filters.field2=value2.2"),expect(e.search).to.contain("filters.field3.start=2003-02-01"),expect(e.search).to.contain("filters.field3.end=2007-05-04"),expect(e.search).to.contain("filters.field4=Inigo+Montoya"),expect(e.search).to.contain("filters.field6=Value+6.1"),expect(e.search).to.contain("filters.field7=2005-05-05"),expect(e.search).to.contain("filters.field8=value8.1&filters.field8=value8.2&filters.field8=value8.3&filters.field8=value8.4")})}),it("should correctly set the request query parameters when inputs are updated",()=>{t(),a(),cy.location().should(e=>{expect(e.search).to.contain("filters.field2=value2.2"),expect(e.search).to.contain("filters.field3.start=2003-02-01"),expect(e.search).to.contain("filters.field3.end=2007-05-04"),expect(e.search).to.contain("filters.field4=Inigo+Montoya"),expect(e.search).to.contain("filters.field6=Value+6.1"),expect(e.search).to.contain("filters.field7=2005-05-05"),expect(e.search).to.contain("filters.field8=value8.1&filters.field8=value8.2&filters.field8=value8.3&filters.field8=value8.4")})})}),context("User defined defaults",()=>{it("should save the user defined defaults",()=>{t(),a(),cy.findByRole("button",{name:"Save current filter values as defaults"}).click(),cy.location().should(e=>{expect(e.search).to.contain("defaultsSaved=true")}),cy.findByRole("button",{name:"Update defaults"}).should("exist"),cy.findByRole("button",{name:"Delete defaults"}).should("exist")}),it("should pre-fill the filter values with the saved defaults next visit",()=>{cy.location().should(e=>{expect(e.search).to.contain("filters.field2=value2.2"),expect(e.search).to.contain("filters.field3.start=2003-02-01"),expect(e.search).to.contain("filters.field3.end=2007-05-04"),expect(e.search).to.contain("filters.field4=Inigo+Montoya"),expect(e.search).to.contain("filters.field6=Value+6.1"),expect(e.search).to.contain("filters.field7=2005-05-05"),expect(e.search).not.to.contain("defaultsSaved=true"),expect(e.search).to.contain("filters.field8=value8.1&filters.field8=value8.2&filters.field8=value8.3&filters.field8=value8.4")}),cy.findByRole("button",{name:"Update defaults"}).should("exist"),cy.findByRole("button",{name:"Delete defaults"}).should("exist")}),it("should update the saved defaults",()=>{cy.findByLabelText(/Selected filters.*/i).within(()=>{cy.findAllByRole("link").eq(1).click(1,1),cy.findAllByRole("link").eq(1).click(1,1),cy.findAllByRole("link").eq(1).click(1,1)}),cy.findByRole("checkbox",{name:"Value 8.2"}).uncheck(),cy.findByRole("checkbox",{name:"Value 8.3"}).uncheck(),cy.findByRole("combobox",{name:"Field 2"}).select("value2.3"),cy.findByRole("button",{name:"Update defaults"}).click(),cy.findByLabelText(/Selected filters.*/i).within(()=>{cy.findAllByRole("link").should("have.length",5)}),cy.location().should(e=>{expect(e.search).to.contain("filters.field2=value2.3"),expect(e.search).not.to.contain("filters.field3.start=2003-02-01"),expect(e.search).not.to.contain("filters.field3.end=2007-05-04"),expect(e.search).to.contain("filters.field6=Value+6.1"),expect(e.search).to.contain("filters.field7=2005-05-05"),expect(e.search).to.contain("defaultsSaved=true"),expect(e.search).not.to.contain("filters.field4=Inigo+Montoya"),expect(e.search).not.to.contain("filters.field8=value8.1&filters.field8=value8.2&filters.field8=value8.3&filters.field8=value8.4"),expect(e.search).to.contain("&filters.field8=value8.1&filters.field8=value8.4")}),cy.reload(),cy.location().should(e=>{expect(e.search).to.contain("filters.field2=value2.3"),expect(e.search).to.contain("filters.field3.start=2003-02-01"),expect(e.search).to.contain("filters.field3.end=2007-05-04"),expect(e.search).to.contain("filters.field6=Value+6.1"),expect(e.search).to.contain("filters.field7=2005-05-05"),expect(e.search).to.contain("defaultsSaved=true"),expect(e.search).not.to.contain("filters.field4=Inigo+Montoya"),expect(e.search).not.to.contain("filters.field8=value8.1&filters.field8=value8.2&filters.field8=value8.3&filters.field8=value8.4"),expect(e.search).to.contain("&filters.field8=value8.1&filters.field8=value8.4")})}),it("should reset the defaults back to the user saved defaults",()=>{cy.findByLabelText(/Selected filters.*/i).within(()=>{cy.findAllByRole("link").eq(1).click(1,1),cy.findAllByRole("link").eq(1).click(1,1),cy.findAllByRole("link").eq(1).click(1,1)}),cy.findByLabelText(/Selected filters.*/i).within(()=>{cy.findAllByRole("link").should("have.length",2)}),cy.findByRole("link",{name:"Reset filters"}).click(),cy.findByLabelText(/Selected filters.*/i).within(()=>{cy.findAllByRole("link").should("have.length",5)})}),it("should remove the save defaults",()=>{cy.findByRole("button",{name:"Delete defaults"}).click(),cy.location().should(e=>{expect(e.search).to.contain("filters.field1=value1.2"),expect(e.search).to.contain("filters.field3.start=2003-02-01"),expect(e.search).to.contain("filters.field3.end=2006-05-04"),expect(e.search).to.contain("filters.field7=2005-02-01"),expect(e.search).to.contain("filters.field8=value8.2&filters.field8=value8.3")})})}),context("Submission",()=>{it("should submit the report details in the request",()=>{cy.intercept({method:"POST",url:"/embedded/platform/dpr/request-report/report/**/**/filters?**"}).as("requestSubmit"),cy.findByRole("button",{name:/Request/}).click(),cy.wait("@requestSubmit").its("request").then(e=>{cy.wrap(e).its("body").should("include","reportId=request-examples"),cy.wrap(e).its("body").should("include","name=Successful+Report"),cy.wrap(e).its("body").should("include","reportName=Successful+Report"),cy.wrap(e).its("body").should("include","id=request-example-success")})}),it("should submit the request with the correct query params",()=>{cy.intercept({method:"POST",url:"/embedded/platform/dpr/request-report/report/**/**/filters?**"}).as("requestSubmit"),cy.findByRole("button",{name:/Request/}).click(),cy.wait("@requestSubmit").its("request").then(e=>{expect(e.query).to.have.property("filters.field1","value1.2"),expect(e.query).to.have.property("filters.field3.end","2006-05-04"),expect(e.query).to.have.property("filters.field3.start","2003-02-01"),expect(e.query).to.have.property("filters.field7","2005-02-01"),expect(e.query).to.have.property("filters.field8"),cy.wrap(e.query["filters.field8"]).should("deep.eq",["value8.2","value8.3"]),expect(e.query).to.have.property("sortColumn","field1"),expect(e.query).to.have.property("sortedAsc","false")})})}),context("Filter order",()=>{beforeEach(()=>{cy.visit(h)}),it("should order the filters correctly",()=>{cy.findAllByLabelText(/Filters/).within(()=>{cy.findAllByRole("textbox").each((e,l)=>{switch(l){case 0:cy.wrap(e).should("have.attr","display-name").then(i=>{expect(i).contains("Field 2")});break;case 1:cy.wrap(e).should("have.attr","display-name").then(i=>{expect(i).contains("Field 3")});break;case 2:cy.wrap(e).should("have.attr","display-name").then(i=>{expect(i).contains("Field 1")});break;default:break}})})})})});
2
2
  //# sourceMappingURL=tests.cy.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../src/dpr/routes/journeys/request-report/filters/tests.cy.ts"],
4
- "sourcesContent": ["describe('Request a report', () => {\n const path = '/embedded/platform/dpr/request-report/report/request-examples/request-example-success/filters'\n const orderPath = '/embedded/platform/dpr/request-report/report/feature-testing/feature-testing-filter-order/filters'\n let field2: Cypress.Chainable<JQuery<HTMLElement>>\n let field3Start: Cypress.Chainable<JQuery<HTMLElement>>\n let field3End: Cypress.Chainable<JQuery<HTMLElement>>\n let field4: Cypress.Chainable<JQuery<HTMLElement>>\n let field5: Cypress.Chainable<JQuery<HTMLElement>>\n let field6: Cypress.Chainable<JQuery<HTMLElement>>\n let field7: Cypress.Chainable<JQuery<HTMLElement>>\n\n const clearSelectedFilters = () => {\n for (let index = 0; index < 5; index += 1) {\n const selectedFilter = cy.get('#dpr-selected-filters > a:nth-child(1)')\n selectedFilter.click(1, 1)\n }\n }\n\n const updateFilterValues = () => {\n cy.findByRole('combobox', { name: 'Field 2' }).select('value2.2')\n cy.findByRole('textbox', { name: 'From' }).type('1/2/2003')\n cy.findByRole('textbox', { name: 'To' }).type('4/5/2007')\n cy.findByRole('combobox', { name: 'Field 4' }).type('Inigo Montoya')\n cy.findByRole('textbox', { name: 'Field 6' }).type('Value 6.1')\n cy.findByRole('textbox', { name: 'Field 7' }).type('05/05/2005')\n // multiselect\n cy.findByRole('checkbox', { name: 'Value 8.1' }).check()\n cy.findByRole('checkbox', { name: 'Value 8.2' }).check()\n cy.findByRole('checkbox', { name: 'Value 8.3' }).check()\n cy.findByRole('checkbox', { name: 'Value 8.4' }).check()\n }\n\n before(() => {\n cy.task('resetStubs')\n cy.task('resetRedis')\n cy.task('stubDefinitions')\n cy.task('stubDefinitionRequestExamplesSuccess')\n cy.task('stubViewAsyncReportingResults')\n cy.task('stubReportsFinishedStatus')\n cy.task('stubRequestSuccessResult20')\n cy.task('stubRequestSuccessReportTablesCount')\n cy.task('stubDefinitionOrderFilters')\n })\n\n beforeEach(() => {\n cy.visit(path)\n\n field2 = cy.findByRole('combobox', { name: 'Field 2' })\n field3Start = cy.findByRole('textbox', { name: 'From' })\n field3End = cy.findByRole('textbox', { name: 'To' })\n field4 = cy.findByRole('combobox', { name: 'Field 4' })\n field5 = cy.findByRole('combobox', { name: 'Field 5' })\n field6 = cy.findByRole('textbox', { name: 'Field 6' })\n field7 = cy.findByRole('textbox', { name: 'Field 7' })\n })\n\n it('is accessible', () => {\n cy.injectAxe()\n cy.checkA11y()\n })\n\n context('Selected filters', () => {\n it('should show the default selected filters', () => {\n cy.findByLabelText(/Selected filters.*/i).within(() => {\n cy.findAllByRole('link')\n .should('have.length', 6)\n .each((filter, index) => {\n switch (index) {\n case 0:\n cy.wrap(filter).contains('Field 1')\n cy.wrap(filter).contains('Value 1.2')\n break\n case 1:\n cy.wrap(filter).contains('Field 3 start')\n cy.wrap(filter).contains('01/02/2003')\n break\n case 2:\n cy.wrap(filter).contains('Field 3 end')\n cy.wrap(filter).contains('04/05/2006')\n break\n case 3:\n cy.wrap(filter).contains('Field 7')\n cy.wrap(filter).contains('01/02/2005')\n break\n case 4:\n cy.wrap(filter).contains('Field 8')\n cy.wrap(filter).contains('Value 8.2, Value 8.3')\n break\n case 5:\n cy.wrap(filter).contains('Reset filters')\n break\n default:\n break\n }\n })\n })\n })\n\n it('should remove the selected filter and reset the input', () => {\n cy.findByLabelText(/Selected filters.*/i).within(() => {\n cy.findAllByRole('link').should('have.length', 6)\n })\n clearSelectedFilters()\n cy.findByLabelText(/Selected filters.*/i).within(() => {\n cy.findAllByRole('link').should('have.length', 1)\n })\n\n cy.findByRole('radio', { name: 'None' }).should('not.be.checked')\n cy.findByRole('radio', { name: 'Value 1.1' }).should('not.be.checked')\n cy.findByRole('radio', { name: 'Value 1.2' }).should('not.be.checked')\n cy.findByRole('radio', { name: 'Value 1.3' }).should('not.be.checked')\n field2.find('option:selected').should('have.text', 'Select your option')\n field3Start.should('have.value', '')\n field3End.should('have.value', '')\n field4.should('have.value', '')\n field5.should('have.value', '')\n field6.should('have.value', '')\n field7.should('have.value', '')\n })\n\n it('should add selected filters when inputs values are updated', () => {\n clearSelectedFilters()\n cy.findByLabelText(/Selected filters.*/i).within(() => {\n cy.findAllByRole('link').should('have.length', 1)\n })\n\n updateFilterValues()\n cy.findByLabelText(/Selected filters.*/i).within(() => {\n cy.findAllByRole('link')\n .should('have.length', 8)\n .each((filter, index) => {\n switch (index) {\n case 0:\n cy.wrap(filter).contains('Field 2')\n cy.wrap(filter).contains('Value 2.2')\n break\n case 1:\n cy.wrap(filter).contains('Field 3 start')\n cy.wrap(filter).contains('01/02/2003')\n break\n case 2:\n cy.wrap(filter).contains('Field 3 end')\n cy.wrap(filter).contains('4/5/2007')\n break\n case 3:\n cy.wrap(filter).contains('Field 4')\n cy.wrap(filter).contains('Inigo Montoya')\n break\n case 4:\n cy.wrap(filter).contains('Field 6')\n cy.wrap(filter).contains('Value 6.1')\n break\n case 5:\n cy.wrap(filter).contains('Field 7')\n cy.wrap(filter).contains('05/05/2005')\n break\n case 6:\n cy.wrap(filter).contains('Field 8')\n cy.wrap(filter).contains('Value 8.1, Value 8.2, Value 8.3 + 1 more')\n break\n default:\n break\n }\n })\n })\n\n cy.location().should((location) => {\n expect(location.search).to.contain(`filters.field2=value2.2`)\n expect(location.search).to.contain(`filters.field3.start=2003-02-01`)\n expect(location.search).to.contain(`filters.field3.end=2007-05-04`)\n expect(location.search).to.contain(`filters.field4=Inigo+Montoya`)\n expect(location.search).to.contain(`filters.field6=Value+6.1`)\n expect(location.search).to.contain(`filters.field7=2005-05-05`)\n })\n })\n\n it('should reset the filters back to their DPD defaults', () => {\n cy.findByLabelText(/Selected filters.*/i).within(() => {\n cy.findAllByRole('link').should('have.length', 6)\n })\n clearSelectedFilters()\n\n cy.findByLabelText(/Selected filters.*/i).within(() => {\n cy.findAllByRole('link').should('have.length', 1)\n })\n\n cy.findByRole('link', { name: 'Reset filters' }).click()\n\n cy.findByLabelText(/Selected filters.*/i).within(() => {\n cy.findAllByRole('link').should('have.length', 6)\n })\n })\n })\n\n context('Request query parameters', () => {\n it('should correctly set the request query parameters from DPD defaults', () => {\n cy.location().should((location) => {\n expect(location.search).to.contain(`filters.field1=value1.2`)\n expect(location.search).to.contain(`filters.field3.start=2003-02-01`)\n expect(location.search).to.contain(`filters.field3.end=2006-05-04`)\n expect(location.search).to.contain(`filters.field7=2005-02-01`)\n expect(location.search).to.contain(`filters.field8=value8.2&filters.field8=value8.3`)\n })\n\n clearSelectedFilters()\n updateFilterValues()\n\n cy.location().should((location) => {\n expect(location.search).to.contain(`filters.field2=value2.2`)\n expect(location.search).to.contain(`filters.field3.start=2003-02-01`)\n expect(location.search).to.contain(`filters.field3.end=2007-05-04`)\n expect(location.search).to.contain(`filters.field4=Inigo+Montoya`)\n expect(location.search).to.contain(`filters.field6=Value+6.1`)\n expect(location.search).to.contain(`filters.field7=2005-05-05`)\n expect(location.search).to.contain(\n `filters.field8=value8.1&filters.field8=value8.2&filters.field8=value8.3&filters.field8=value8.4`,\n )\n })\n })\n\n it('should correctly set the request query parameters when inputs are updated', () => {\n clearSelectedFilters()\n updateFilterValues()\n\n cy.location().should((location) => {\n expect(location.search).to.contain(`filters.field2=value2.2`)\n expect(location.search).to.contain(`filters.field3.start=2003-02-01`)\n expect(location.search).to.contain(`filters.field3.end=2007-05-04`)\n expect(location.search).to.contain(`filters.field4=Inigo+Montoya`)\n expect(location.search).to.contain(`filters.field6=Value+6.1`)\n expect(location.search).to.contain(`filters.field7=2005-05-05`)\n expect(location.search).to.contain(\n `filters.field8=value8.1&filters.field8=value8.2&filters.field8=value8.3&filters.field8=value8.4`,\n )\n })\n })\n })\n\n context('User defined defaults', () => {\n it('should save the user defined defaults', () => {\n clearSelectedFilters()\n updateFilterValues()\n\n cy.findByRole('button', { name: 'Save current filter values as defaults' }).click()\n\n cy.location().should((location) => {\n expect(location.search).to.contain('defaultsSaved=true')\n })\n\n cy.findByRole('button', { name: 'Update defaults' }).should('exist')\n cy.findByRole('button', { name: 'Delete defaults' }).should('exist')\n })\n\n it('should pre-fill the filter values with the saved defaults next visit', () => {\n cy.location().should((location) => {\n expect(location.search).to.contain(`filters.field2=value2.2`)\n expect(location.search).to.contain(`filters.field3.start=2003-02-01`)\n expect(location.search).to.contain(`filters.field3.end=2007-05-04`)\n expect(location.search).to.contain(`filters.field4=Inigo+Montoya`)\n expect(location.search).to.contain(`filters.field6=Value+6.1`)\n expect(location.search).to.contain(`filters.field7=2005-05-05`)\n expect(location.search).not.to.contain(`defaultsSaved=true`)\n expect(location.search).to.contain(\n `filters.field8=value8.1&filters.field8=value8.2&filters.field8=value8.3&filters.field8=value8.4`,\n )\n })\n\n cy.findByRole('button', { name: 'Update defaults' }).should('exist')\n cy.findByRole('button', { name: 'Delete defaults' }).should('exist')\n })\n\n it('should update the saved defaults', () => {\n cy.findByLabelText(/Selected filters.*/i).within(() => {\n cy.findAllByRole('link').eq(1).click(1, 1)\n cy.findAllByRole('link').eq(1).click(1, 1)\n cy.findAllByRole('link').eq(1).click(1, 1)\n })\n\n cy.findByRole('checkbox', { name: 'Value 8.2' }).uncheck()\n cy.findByRole('checkbox', { name: 'Value 8.3' }).uncheck()\n cy.findByRole('combobox', { name: 'Field 2' }).select('value2.3')\n\n cy.findByRole('button', { name: 'Update defaults' }).click()\n\n cy.findByLabelText(/Selected filters.*/i).within(() => {\n cy.findAllByRole('link').should('have.length', 5)\n })\n\n cy.location().should((location) => {\n expect(location.search).to.contain(`filters.field2=value2.3`)\n expect(location.search).not.to.contain(`filters.field3.start=2003-02-01`)\n expect(location.search).not.to.contain(`filters.field3.end=2007-05-04`)\n expect(location.search).to.contain(`filters.field6=Value+6.1`)\n expect(location.search).to.contain(`filters.field7=2005-05-05`)\n expect(location.search).to.contain(`defaultsSaved=true`)\n expect(location.search).not.to.contain(`filters.field4=Inigo+Montoya`)\n expect(location.search).not.to.contain(\n `filters.field8=value8.1&filters.field8=value8.2&filters.field8=value8.3&filters.field8=value8.4`,\n )\n expect(location.search).to.contain(`&filters.field8=value8.1&filters.field8=value8.4`)\n })\n\n cy.reload()\n\n cy.location().should((location) => {\n expect(location.search).to.contain(`filters.field2=value2.3`)\n expect(location.search).to.contain(`filters.field3.start=2003-02-01`)\n expect(location.search).to.contain(`filters.field3.end=2007-05-04`)\n expect(location.search).to.contain(`filters.field6=Value+6.1`)\n expect(location.search).to.contain(`filters.field7=2005-05-05`)\n expect(location.search).to.contain(`defaultsSaved=true`)\n expect(location.search).not.to.contain(`filters.field4=Inigo+Montoya`)\n expect(location.search).not.to.contain(\n `filters.field8=value8.1&filters.field8=value8.2&filters.field8=value8.3&filters.field8=value8.4`,\n )\n expect(location.search).to.contain(`&filters.field8=value8.1&filters.field8=value8.4`)\n })\n })\n\n it('should reset the defaults back to the user saved defaults', () => {\n cy.findByLabelText(/Selected filters.*/i).within(() => {\n cy.findAllByRole('link').eq(1).click(1, 1)\n cy.findAllByRole('link').eq(1).click(1, 1)\n cy.findAllByRole('link').eq(1).click(1, 1)\n })\n\n cy.findByLabelText(/Selected filters.*/i).within(() => {\n cy.findAllByRole('link').should('have.length', 2)\n })\n\n cy.findByRole('link', { name: 'Reset filters' }).click()\n\n cy.findByLabelText(/Selected filters.*/i).within(() => {\n cy.findAllByRole('link').should('have.length', 5)\n })\n })\n\n it('should remove the save defaults', () => {\n cy.findByRole('button', { name: 'Delete defaults' }).click()\n\n cy.location().should((location) => {\n expect(location.search).to.contain(`filters.field1=value1.2`)\n expect(location.search).to.contain(`filters.field3.start=2003-02-01`)\n expect(location.search).to.contain(`filters.field3.end=2006-05-04`)\n expect(location.search).to.contain(`filters.field7=2005-02-01`)\n expect(location.search).to.contain(`filters.field8=value8.2&filters.field8=value8.3`)\n })\n })\n })\n\n context('Submission', () => {\n it('should submit the report details in the request', () => {\n cy.intercept({\n method: 'POST',\n url: '/embedded/platform/dpr/request-report/report/**/**/filters?**',\n }).as('requestSubmit')\n\n cy.findByRole('button', { name: /Request/ }).click()\n\n cy.wait('@requestSubmit')\n .its('request')\n .then((request) => {\n cy.wrap(request).its('body').should('include', 'reportId=request-examples')\n cy.wrap(request).its('body').should('include', 'name=Successful+Report')\n cy.wrap(request).its('body').should('include', 'reportName=Successful+Report')\n cy.wrap(request).its('body').should('include', 'id=request-example-success')\n })\n })\n\n it('should submit the request with the correct query params', () => {\n cy.intercept({\n method: 'POST',\n url: '/embedded/platform/dpr/request-report/report/**/**/filters?**',\n }).as('requestSubmit')\n\n cy.findByRole('button', { name: /Request/ }).click()\n\n cy.wait('@requestSubmit')\n .its('request')\n .then((request) => {\n expect(request.query).to.have.property('filters.field1', 'value1.2')\n expect(request.query).to.have.property('filters.field3.end', '2006-05-04')\n expect(request.query).to.have.property('filters.field3.start', '2003-02-01')\n expect(request.query).to.have.property('filters.field7', '2005-02-01')\n expect(request.query).to.have.property('filters.field8')\n cy.wrap(request.query['filters.field8']).should('deep.eq', ['value8.2', 'value8.3'])\n expect(request.query).to.have.property('sortColumn', 'field1')\n expect(request.query).to.have.property('sortedAsc', 'false')\n })\n })\n })\n\n context('Filter order', () => {\n beforeEach(() => {\n cy.visit(orderPath)\n })\n\n it('should order the filters correctly', () => {\n cy.findAllByLabelText(/Filters/).within(() => {\n cy.findAllByRole('textbox').each((el, idx) => {\n switch (idx) {\n case 0:\n cy.wrap(el)\n .should('have.attr', 'display-name')\n .then((displayName) => {\n expect(displayName).contains('Field 2')\n })\n break\n case 1:\n cy.wrap(el)\n .should('have.attr', 'display-name')\n .then((displayName) => {\n expect(displayName).contains('Field 3')\n })\n break\n case 2:\n cy.wrap(el)\n .should('have.attr', 'display-name')\n .then((displayName) => {\n expect(displayName).contains('Field 1')\n })\n break\n default:\n break\n }\n })\n })\n })\n })\n})\n"],
5
- "mappings": "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",
6
- "names": ["path", "orderPath", "field2", "field3Start", "field3End", "field4", "field5", "field6", "field7", "clearSelectedFilters", "index", "updateFilterValues", "filter", "location", "request", "el", "idx", "displayName"]
4
+ "sourcesContent": ["import { executeReportStubs } from '../../../../../../cypress-tests/cypressUtils'\n\ndescribe('Request a report', () => {\n const path = '/embedded/platform/dpr/request-report/report/request-examples/request-example-success/filters'\n const orderPath = '/embedded/platform/dpr/request-report/report/feature-testing/feature-testing-filter-order/filters'\n let field2: Cypress.Chainable<JQuery<HTMLElement>>\n let field3Start: Cypress.Chainable<JQuery<HTMLElement>>\n let field3End: Cypress.Chainable<JQuery<HTMLElement>>\n let field4: Cypress.Chainable<JQuery<HTMLElement>>\n let field5: Cypress.Chainable<JQuery<HTMLElement>>\n let field6: Cypress.Chainable<JQuery<HTMLElement>>\n let field7: Cypress.Chainable<JQuery<HTMLElement>>\n\n const clearSelectedFilters = () => {\n for (let index = 0; index < 5; index += 1) {\n const selectedFilter = cy.get('#dpr-selected-filters > a:nth-child(1)')\n selectedFilter.click(1, 1)\n }\n }\n\n const updateFilterValues = () => {\n cy.findByRole('combobox', { name: 'Field 2' }).select('value2.2')\n cy.findByRole('textbox', { name: 'From' }).type('1/2/2003')\n cy.findByRole('textbox', { name: 'To' }).type('4/5/2007')\n cy.findByRole('combobox', { name: 'Field 4' }).type('Inigo Montoya')\n cy.findByRole('textbox', { name: 'Field 6' }).type('Value 6.1')\n cy.findByRole('textbox', { name: 'Field 7' }).type('05/05/2005')\n // multiselect\n cy.findByRole('checkbox', { name: 'Value 8.1' }).check()\n cy.findByRole('checkbox', { name: 'Value 8.2' }).check()\n cy.findByRole('checkbox', { name: 'Value 8.3' }).check()\n cy.findByRole('checkbox', { name: 'Value 8.4' }).check()\n }\n\n before(() => {\n executeReportStubs()\n cy.task('stubDefinitionRequestExamplesSuccess')\n cy.task('stubRequestSuccessResult20')\n cy.task('stubDefinitionOrderFilters')\n })\n\n beforeEach(() => {\n cy.visit(path)\n\n field2 = cy.findByRole('combobox', { name: 'Field 2' })\n field3Start = cy.findByRole('textbox', { name: 'From' })\n field3End = cy.findByRole('textbox', { name: 'To' })\n field4 = cy.findByRole('combobox', { name: 'Field 4' })\n field5 = cy.findByRole('combobox', { name: 'Field 5' })\n field6 = cy.findByRole('textbox', { name: 'Field 6' })\n field7 = cy.findByRole('textbox', { name: 'Field 7' })\n })\n\n it('is accessible', () => {\n cy.injectAxe()\n cy.checkA11y()\n })\n\n context('Selected filters', () => {\n it('should show the default selected filters', () => {\n cy.findByLabelText(/Selected filters.*/i).within(() => {\n cy.findAllByRole('link')\n .should('have.length', 6)\n .each((filter, index) => {\n switch (index) {\n case 0:\n cy.wrap(filter).contains('Field 1')\n cy.wrap(filter).contains('Value 1.2')\n break\n case 1:\n cy.wrap(filter).contains('Field 3 start')\n cy.wrap(filter).contains('01/02/2003')\n break\n case 2:\n cy.wrap(filter).contains('Field 3 end')\n cy.wrap(filter).contains('04/05/2006')\n break\n case 3:\n cy.wrap(filter).contains('Field 7')\n cy.wrap(filter).contains('01/02/2005')\n break\n case 4:\n cy.wrap(filter).contains('Field 8')\n cy.wrap(filter).contains('Value 8.2, Value 8.3')\n break\n case 5:\n cy.wrap(filter).contains('Reset filters')\n break\n default:\n break\n }\n })\n })\n })\n\n it('should remove the selected filter and reset the input', () => {\n cy.findByLabelText(/Selected filters.*/i).within(() => {\n cy.findAllByRole('link').should('have.length', 6)\n })\n clearSelectedFilters()\n cy.findByLabelText(/Selected filters.*/i).within(() => {\n cy.findAllByRole('link').should('have.length', 1)\n })\n\n cy.findByRole('radio', { name: 'None' }).should('not.be.checked')\n cy.findByRole('radio', { name: 'Value 1.1' }).should('not.be.checked')\n cy.findByRole('radio', { name: 'Value 1.2' }).should('not.be.checked')\n cy.findByRole('radio', { name: 'Value 1.3' }).should('not.be.checked')\n field2.find('option:selected').should('have.text', 'Select your option')\n field3Start.should('have.value', '')\n field3End.should('have.value', '')\n field4.should('have.value', '')\n field5.should('have.value', '')\n field6.should('have.value', '')\n field7.should('have.value', '')\n })\n\n it('should add selected filters when inputs values are updated', () => {\n clearSelectedFilters()\n cy.findByLabelText(/Selected filters.*/i).within(() => {\n cy.findAllByRole('link').should('have.length', 1)\n })\n\n updateFilterValues()\n cy.findByLabelText(/Selected filters.*/i).within(() => {\n cy.findAllByRole('link')\n .should('have.length', 8)\n .each((filter, index) => {\n switch (index) {\n case 0:\n cy.wrap(filter).contains('Field 2')\n cy.wrap(filter).contains('Value 2.2')\n break\n case 1:\n cy.wrap(filter).contains('Field 3 start')\n cy.wrap(filter).contains('01/02/2003')\n break\n case 2:\n cy.wrap(filter).contains('Field 3 end')\n cy.wrap(filter).contains('4/5/2007')\n break\n case 3:\n cy.wrap(filter).contains('Field 4')\n cy.wrap(filter).contains('Inigo Montoya')\n break\n case 4:\n cy.wrap(filter).contains('Field 6')\n cy.wrap(filter).contains('Value 6.1')\n break\n case 5:\n cy.wrap(filter).contains('Field 7')\n cy.wrap(filter).contains('05/05/2005')\n break\n case 6:\n cy.wrap(filter).contains('Field 8')\n cy.wrap(filter).contains('Value 8.1, Value 8.2, Value 8.3 + 1 more')\n break\n default:\n break\n }\n })\n })\n\n cy.location().should((location) => {\n expect(location.search).to.contain(`filters.field2=value2.2`)\n expect(location.search).to.contain(`filters.field3.start=2003-02-01`)\n expect(location.search).to.contain(`filters.field3.end=2007-05-04`)\n expect(location.search).to.contain(`filters.field4=Inigo+Montoya`)\n expect(location.search).to.contain(`filters.field6=Value+6.1`)\n expect(location.search).to.contain(`filters.field7=2005-05-05`)\n })\n })\n\n it('should reset the filters back to their DPD defaults', () => {\n cy.findByLabelText(/Selected filters.*/i).within(() => {\n cy.findAllByRole('link').should('have.length', 6)\n })\n clearSelectedFilters()\n\n cy.findByLabelText(/Selected filters.*/i).within(() => {\n cy.findAllByRole('link').should('have.length', 1)\n })\n\n cy.findByRole('link', { name: 'Reset filters' }).click()\n\n cy.findByLabelText(/Selected filters.*/i).within(() => {\n cy.findAllByRole('link').should('have.length', 6)\n })\n })\n })\n\n context('Request query parameters', () => {\n it('should correctly set the request query parameters from DPD defaults', () => {\n cy.location().should((location) => {\n expect(location.search).to.contain(`filters.field1=value1.2`)\n expect(location.search).to.contain(`filters.field3.start=2003-02-01`)\n expect(location.search).to.contain(`filters.field3.end=2006-05-04`)\n expect(location.search).to.contain(`filters.field7=2005-02-01`)\n expect(location.search).to.contain(`filters.field8=value8.2&filters.field8=value8.3`)\n })\n\n clearSelectedFilters()\n updateFilterValues()\n\n cy.location().should((location) => {\n expect(location.search).to.contain(`filters.field2=value2.2`)\n expect(location.search).to.contain(`filters.field3.start=2003-02-01`)\n expect(location.search).to.contain(`filters.field3.end=2007-05-04`)\n expect(location.search).to.contain(`filters.field4=Inigo+Montoya`)\n expect(location.search).to.contain(`filters.field6=Value+6.1`)\n expect(location.search).to.contain(`filters.field7=2005-05-05`)\n expect(location.search).to.contain(\n `filters.field8=value8.1&filters.field8=value8.2&filters.field8=value8.3&filters.field8=value8.4`,\n )\n })\n })\n\n it('should correctly set the request query parameters when inputs are updated', () => {\n clearSelectedFilters()\n updateFilterValues()\n\n cy.location().should((location) => {\n expect(location.search).to.contain(`filters.field2=value2.2`)\n expect(location.search).to.contain(`filters.field3.start=2003-02-01`)\n expect(location.search).to.contain(`filters.field3.end=2007-05-04`)\n expect(location.search).to.contain(`filters.field4=Inigo+Montoya`)\n expect(location.search).to.contain(`filters.field6=Value+6.1`)\n expect(location.search).to.contain(`filters.field7=2005-05-05`)\n expect(location.search).to.contain(\n `filters.field8=value8.1&filters.field8=value8.2&filters.field8=value8.3&filters.field8=value8.4`,\n )\n })\n })\n })\n\n context('User defined defaults', () => {\n it('should save the user defined defaults', () => {\n clearSelectedFilters()\n updateFilterValues()\n\n cy.findByRole('button', { name: 'Save current filter values as defaults' }).click()\n\n cy.location().should((location) => {\n expect(location.search).to.contain('defaultsSaved=true')\n })\n\n cy.findByRole('button', { name: 'Update defaults' }).should('exist')\n cy.findByRole('button', { name: 'Delete defaults' }).should('exist')\n })\n\n it('should pre-fill the filter values with the saved defaults next visit', () => {\n cy.location().should((location) => {\n expect(location.search).to.contain(`filters.field2=value2.2`)\n expect(location.search).to.contain(`filters.field3.start=2003-02-01`)\n expect(location.search).to.contain(`filters.field3.end=2007-05-04`)\n expect(location.search).to.contain(`filters.field4=Inigo+Montoya`)\n expect(location.search).to.contain(`filters.field6=Value+6.1`)\n expect(location.search).to.contain(`filters.field7=2005-05-05`)\n expect(location.search).not.to.contain(`defaultsSaved=true`)\n expect(location.search).to.contain(\n `filters.field8=value8.1&filters.field8=value8.2&filters.field8=value8.3&filters.field8=value8.4`,\n )\n })\n\n cy.findByRole('button', { name: 'Update defaults' }).should('exist')\n cy.findByRole('button', { name: 'Delete defaults' }).should('exist')\n })\n\n it('should update the saved defaults', () => {\n cy.findByLabelText(/Selected filters.*/i).within(() => {\n cy.findAllByRole('link').eq(1).click(1, 1)\n cy.findAllByRole('link').eq(1).click(1, 1)\n cy.findAllByRole('link').eq(1).click(1, 1)\n })\n\n cy.findByRole('checkbox', { name: 'Value 8.2' }).uncheck()\n cy.findByRole('checkbox', { name: 'Value 8.3' }).uncheck()\n cy.findByRole('combobox', { name: 'Field 2' }).select('value2.3')\n\n cy.findByRole('button', { name: 'Update defaults' }).click()\n\n cy.findByLabelText(/Selected filters.*/i).within(() => {\n cy.findAllByRole('link').should('have.length', 5)\n })\n\n cy.location().should((location) => {\n expect(location.search).to.contain(`filters.field2=value2.3`)\n expect(location.search).not.to.contain(`filters.field3.start=2003-02-01`)\n expect(location.search).not.to.contain(`filters.field3.end=2007-05-04`)\n expect(location.search).to.contain(`filters.field6=Value+6.1`)\n expect(location.search).to.contain(`filters.field7=2005-05-05`)\n expect(location.search).to.contain(`defaultsSaved=true`)\n expect(location.search).not.to.contain(`filters.field4=Inigo+Montoya`)\n expect(location.search).not.to.contain(\n `filters.field8=value8.1&filters.field8=value8.2&filters.field8=value8.3&filters.field8=value8.4`,\n )\n expect(location.search).to.contain(`&filters.field8=value8.1&filters.field8=value8.4`)\n })\n\n cy.reload()\n\n cy.location().should((location) => {\n expect(location.search).to.contain(`filters.field2=value2.3`)\n expect(location.search).to.contain(`filters.field3.start=2003-02-01`)\n expect(location.search).to.contain(`filters.field3.end=2007-05-04`)\n expect(location.search).to.contain(`filters.field6=Value+6.1`)\n expect(location.search).to.contain(`filters.field7=2005-05-05`)\n expect(location.search).to.contain(`defaultsSaved=true`)\n expect(location.search).not.to.contain(`filters.field4=Inigo+Montoya`)\n expect(location.search).not.to.contain(\n `filters.field8=value8.1&filters.field8=value8.2&filters.field8=value8.3&filters.field8=value8.4`,\n )\n expect(location.search).to.contain(`&filters.field8=value8.1&filters.field8=value8.4`)\n })\n })\n\n it('should reset the defaults back to the user saved defaults', () => {\n cy.findByLabelText(/Selected filters.*/i).within(() => {\n cy.findAllByRole('link').eq(1).click(1, 1)\n cy.findAllByRole('link').eq(1).click(1, 1)\n cy.findAllByRole('link').eq(1).click(1, 1)\n })\n\n cy.findByLabelText(/Selected filters.*/i).within(() => {\n cy.findAllByRole('link').should('have.length', 2)\n })\n\n cy.findByRole('link', { name: 'Reset filters' }).click()\n\n cy.findByLabelText(/Selected filters.*/i).within(() => {\n cy.findAllByRole('link').should('have.length', 5)\n })\n })\n\n it('should remove the save defaults', () => {\n cy.findByRole('button', { name: 'Delete defaults' }).click()\n\n cy.location().should((location) => {\n expect(location.search).to.contain(`filters.field1=value1.2`)\n expect(location.search).to.contain(`filters.field3.start=2003-02-01`)\n expect(location.search).to.contain(`filters.field3.end=2006-05-04`)\n expect(location.search).to.contain(`filters.field7=2005-02-01`)\n expect(location.search).to.contain(`filters.field8=value8.2&filters.field8=value8.3`)\n })\n })\n })\n\n context('Submission', () => {\n it('should submit the report details in the request', () => {\n cy.intercept({\n method: 'POST',\n url: '/embedded/platform/dpr/request-report/report/**/**/filters?**',\n }).as('requestSubmit')\n\n cy.findByRole('button', { name: /Request/ }).click()\n\n cy.wait('@requestSubmit')\n .its('request')\n .then((request) => {\n cy.wrap(request).its('body').should('include', 'reportId=request-examples')\n cy.wrap(request).its('body').should('include', 'name=Successful+Report')\n cy.wrap(request).its('body').should('include', 'reportName=Successful+Report')\n cy.wrap(request).its('body').should('include', 'id=request-example-success')\n })\n })\n\n it('should submit the request with the correct query params', () => {\n cy.intercept({\n method: 'POST',\n url: '/embedded/platform/dpr/request-report/report/**/**/filters?**',\n }).as('requestSubmit')\n\n cy.findByRole('button', { name: /Request/ }).click()\n\n cy.wait('@requestSubmit')\n .its('request')\n .then((request) => {\n expect(request.query).to.have.property('filters.field1', 'value1.2')\n expect(request.query).to.have.property('filters.field3.end', '2006-05-04')\n expect(request.query).to.have.property('filters.field3.start', '2003-02-01')\n expect(request.query).to.have.property('filters.field7', '2005-02-01')\n expect(request.query).to.have.property('filters.field8')\n cy.wrap(request.query['filters.field8']).should('deep.eq', ['value8.2', 'value8.3'])\n expect(request.query).to.have.property('sortColumn', 'field1')\n expect(request.query).to.have.property('sortedAsc', 'false')\n })\n })\n })\n\n context('Filter order', () => {\n beforeEach(() => {\n cy.visit(orderPath)\n })\n\n it('should order the filters correctly', () => {\n cy.findAllByLabelText(/Filters/).within(() => {\n cy.findAllByRole('textbox').each((el, idx) => {\n switch (idx) {\n case 0:\n cy.wrap(el)\n .should('have.attr', 'display-name')\n .then((displayName) => {\n expect(displayName).contains('Field 2')\n })\n break\n case 1:\n cy.wrap(el)\n .should('have.attr', 'display-name')\n .then((displayName) => {\n expect(displayName).contains('Field 3')\n })\n break\n case 2:\n cy.wrap(el)\n .should('have.attr', 'display-name')\n .then((displayName) => {\n expect(displayName).contains('Field 1')\n })\n break\n default:\n break\n }\n })\n })\n })\n })\n})\n"],
5
+ "mappings": "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",
6
+ "names": ["import_cypressUtils", "path", "orderPath", "field2", "field3Start", "field3End", "field4", "field5", "field6", "field7", "clearSelectedFilters", "index", "updateFilterValues", "filter", "location", "request", "el", "idx", "displayName"]
7
7
  }
@@ -1,3 +1,5 @@
1
+ import { executeReportStubs } from '../../../../../../cypress-tests/cypressUtils'
2
+
1
3
  describe('Request a report', () => {
2
4
  const path = '/embedded/platform/dpr/request-report/report/request-examples/request-example-success/filters'
3
5
  const orderPath = '/embedded/platform/dpr/request-report/report/feature-testing/feature-testing-filter-order/filters'
@@ -31,14 +33,9 @@ describe('Request a report', () => {
31
33
  }
32
34
 
33
35
  before(() => {
34
- cy.task('resetStubs')
35
- cy.task('resetRedis')
36
- cy.task('stubDefinitions')
36
+ executeReportStubs()
37
37
  cy.task('stubDefinitionRequestExamplesSuccess')
38
- cy.task('stubViewAsyncReportingResults')
39
- cy.task('stubReportsFinishedStatus')
40
38
  cy.task('stubRequestSuccessResult20')
41
- cy.task('stubRequestSuccessReportTablesCount')
42
39
  cy.task('stubDefinitionOrderFilters')
43
40
  })
44
41
 
@@ -1,2 +1,2 @@
1
- var _=Object.create;var g=Object.defineProperty;var $=Object.getOwnPropertyDescriptor;var j=Object.getOwnPropertyNames;var J=Object.getPrototypeOf,L=Object.prototype.hasOwnProperty;var z=(e,t)=>{for(var r in t)g(e,r,{get:t[r],enumerable:!0})},T=(e,t,r,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of j(t))!L.call(e,i)&&i!==r&&g(e,i,{get:()=>t[i],enumerable:!(a=$(t,i))||a.enumerable});return e};var h=(e,t,r)=>(r=e!=null?_(J(e)):{},T(t||!e||!e.__esModule?g(r,"default",{value:e,enumerable:!0}):r,e)),G=e=>T(g({},"__esModule",{value:!0}),e);var te={};z(te,{cancelRequest:()=>C,default:()=>ee,getDefintionByType:()=>Q,getFiltersFromReqBody:()=>k,renderRequest:()=>N,request:()=>B,updateStore:()=>O});module.exports=G(te);var x=h(require("../../../../components/_async/async-filters-form/utils")),R=h(require("../../../../utils/localsHelper")),U=h(require("../../../../components/_filters/utils")),b=require("../../../../utils/reportStoreHelper"),q=h(require("../../../../utils/UserStoreItemBuilder")),m=require("../../../../types/UserReports"),P=h(require("../../../../utils/Personalisation/personalisationUtils")),V=require("../../../../components/_filters/filtersTypeEnum");const O=async({req:e,res:t,services:r,queryData:a,executionData:i,childExecutionData:o})=>{const{search:p,id:n,type:s}=e.body,{dprUser:d,definitionsPath:c,dpdPathFromQuery:l}=R.default.getValues(t);await(0,b.removeDuplicates)({storeService:r.requestedReportService,userId:d.id,id:n,search:p}),await(0,b.removeDuplicates)({storeService:r.recentlyViewedService,userId:d.id,id:n,search:p});const u=e.body,y={type:u.type,reportId:u.reportId,reportName:u.reportName,description:u.description,id:u.id,name:u.name};let f;switch(s){case m.ReportType.REPORT:f=new q.default(y,u).addExecutionData(i).addChildExecutionData(o).addFilters(a?.filterData).addSortData(a?.sortData).addDefinitionsPath(c,l).addRequestUrls(e).addQuery(a).addStatus(m.RequestStatus.SUBMITTED).addTimestamp().build();break;case m.ReportType.DASHBOARD:{f=new q.default(y,u).addExecutionData(i).addChildExecutionData(o).addFilters(a?.filterData).addDefinitionsPath(c,l).addRequestUrls(e).addQuery(a).addStatus(m.RequestStatus.SUBMITTED).addTimestamp().addMetrics(JSON.parse(e.body.sections)).build();break}default:break}await r.requestedReportService.addReport(d.id,f)};async function K(e,t,r,a,i,o){return Promise.all(e.map(p=>t.requestAsyncReport(r,a,p.id,{...i.query,dataProductDefinitionsPath:o}).then(n=>{const{executionId:s,tableId:d}=n;return{executionId:s,tableId:d,variantId:p.id}})))}const W=async({req:e,res:t,token:r,dashboardService:a,reportingService:i})=>{const{definitionsPath:o,dpdPathFromQuery:p}=R.default.getValues(t),{reportId:n,id:s,type:d}=e.body;let c,l,u,y,f,D=[];d===m.ReportType.REPORT&&(f=await i.getDefinition(r,n,s,o),c=f?f.variant.specification?.fields:[],l=x.default.setQueryFromFilters(e,c),{executionId:u,tableId:y}=await i.requestAsyncReport(r,n,s,{...l.query,dataProductDefinitionsPath:o}),D=f.variant.childVariants??[]),d===m.ReportType.DASHBOARD&&(f=await a.getDefinition(r,n,s,o),c=f?f.filterFields:[],l=x.default.setQueryFromFilters(e,c),{executionId:u,tableId:y}=await a.requestAsyncDashboard(r,n,s,{...l.query,dataProductDefinitionsPath:o}));const S=await K(D,i,r,n,l,o);return{executionData:{executionId:u,tableId:y,...p&&{dataProductDefinitionsPath:o}},childExecutionData:S,queryData:l}},X=async({token:e,reportId:t,definitionPath:r,services:a,definition:i})=>{const n=(await a.reportingService.getDefinitions(e,r)).find(u=>u.id===t).name,{name:s,description:d,sections:c,filterFields:l}=i;return{reportName:n,name:s,description:d,sections:c||[],fields:l}},Y=async e=>({definition:e,reportName:e.name,name:e.variant.name,description:e.variant.description||e.description,template:e.variant.specification,fields:e?.variant?.specification?.fields,interactive:e?.variant?.interactive}),Q=async(e,t,r,a)=>{const{token:i,definitionsPath:o}=R.default.getValues(t),{reportId:p,id:n,variantId:s,type:d}=e.params;return await(d===m.ReportType.REPORT?a.reportingService:a.dashboardService).getDefinition(i,p,s||n,o)},Z=async(e,t,r,a,i,o)=>{const{reportId:p,id:n}=e.params;let s=await x.default.renderFilters(r,a);s.filters=P.default.setUserContextDefaults(t,s.filters);const d=await i.defaultFilterValuesService.get(o,p,n,V.FiltersType.REQUEST);return d&&(s=P.default.setFilterValuesFromSavedDefaults(s.filters,s.sortBy,d)),s.filters=U.default.setFilterValuesFromRequest(s.filters,e),{filtersData:s,defaultFilterValues:d}},B=async({req:e,res:t,services:r})=>{const{token:a}=R.default.getValues(t),i={req:e,res:t,token:a},{executionData:o,queryData:p,childExecutionData:n}=await W({...i,dashboardService:r.dashboardService,reportingService:r.reportingService});return o&&await O({req:e,res:t,services:r,queryData:p,executionData:o,childExecutionData:n}),o},C=async({req:e,res:t,services:r})=>{const{token:a,dprUser:i,definitionsPath:o}=R.default.getValues(t),{reportId:p,id:n,executionId:s,type:d}=e.params;let c;d===m.ReportType.REPORT&&(c=r.reportingService),d===m.ReportType.DASHBOARD&&(c=r.dashboardService);const l=await c.cancelAsyncRequest(a,p,n,s,o);l&&l.cancellationSucceeded&&await r.requestedReportService.updateStatus(s,i.id,m.RequestStatus.ABORTED)},N=async({req:e,res:t,services:r,next:a})=>{try{const{token:i,csrfToken:o,definitionsPath:p,dpdPathFromQuery:n,dprUser:s}=R.default.getValues(t),{reportId:d,type:c,id:l}=e.params,{definition:u}=t.locals,y=e.query.defaultsSaved,f={token:i,reportId:d,definitionPath:p,services:r};let D,S,v,H,F,A,E,w,I;c===m.ReportType.REPORT&&({name:D,reportName:S,description:v,fields:F,interactive:E}=await Y(u)),c===m.ReportType.DASHBOARD&&({name:D,reportName:S,description:v,sections:A,fields:F}=await X({...f,definition:u})),F&&({filtersData:w,defaultFilterValues:I}=await Z(e,t,F,E,r,s.id));const M={reportName:S,name:D,description:v,reportId:d,id:l,...n&&{definitionPath:p},csrfToken:o,template:H,sections:A,hasDefaults:I?.length,defaultsSaved:y,type:c};return{title:`Request ${c}`,filtersDescription:`Customise your ${c} using the filters below and submit your request.`,filtersData:w,reportData:M}}catch(i){return a(i),!1}},k=e=>Object.keys(e.body).filter(t=>t.includes("filters.")).filter(t=>!!e.body[t]).map(t=>({name:t,value:e.body[t]}));var ee={request:B,cancelRequest:C,renderRequest:N,getFiltersFromReqBody:k,getDefintionByType:Q};0&&(module.exports={cancelRequest,getDefintionByType,getFiltersFromReqBody,renderRequest,request,updateStore});
1
+ var $=Object.create;var g=Object.defineProperty;var j=Object.getOwnPropertyDescriptor;var J=Object.getOwnPropertyNames;var L=Object.getPrototypeOf,_=Object.prototype.hasOwnProperty;var z=(e,t)=>{for(var r in t)g(e,r,{get:t[r],enumerable:!0})},T=(e,t,r,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of J(t))!_.call(e,i)&&i!==r&&g(e,i,{get:()=>t[i],enumerable:!(a=j(t,i))||a.enumerable});return e};var h=(e,t,r)=>(r=e!=null?$(L(e)):{},T(t||!e||!e.__esModule?g(r,"default",{value:e,enumerable:!0}):r,e)),G=e=>T(g({},"__esModule",{value:!0}),e);var te={};z(te,{cancelRequest:()=>C,default:()=>ee,getDefintionByType:()=>Q,getFiltersFromReqBody:()=>k,renderRequest:()=>N,request:()=>B,updateStore:()=>O});module.exports=G(te);var x=h(require("../../../../components/_async/async-filters-form/utils")),y=h(require("../../../../utils/localsHelper")),U=h(require("../../../../components/_filters/utils")),q=require("../../../../utils/reportStoreHelper"),P=h(require("../../../../utils/UserStoreItemBuilder")),m=require("../../../../types/UserReports"),b=h(require("../../../../utils/Personalisation/personalisationUtils")),V=require("../../../../components/_filters/filtersTypeEnum");const O=async({req:e,res:t,services:r,queryData:a,executionData:i,childExecutionData:o})=>{const{search:p,id:n,type:s}=e.body,{dprUser:c,definitionsPath:d,dpdPathFromQuery:l}=y.default.getValues(t);await(0,q.removeDuplicates)({storeService:r.requestedReportService,userId:c.id,id:n,search:p}),await(0,q.removeDuplicates)({storeService:r.recentlyViewedService,userId:c.id,id:n,search:p});const u=e.body,R={type:u.type,reportId:u.reportId,reportName:u.reportName,description:u.description,id:u.id,name:u.name};let f;switch(s){case m.ReportType.REPORT:f=new P.default(R,u).addExecutionData(i).addChildExecutionData(o).addFilters(a?.filterData).addSortData(a?.sortData).addDefinitionsPath(d,l).addRequestUrls(e).addQuery(a).addStatus(m.RequestStatus.SUBMITTED).addTimestamp().build();break;case m.ReportType.DASHBOARD:{f=new P.default(R,u).addExecutionData(i).addChildExecutionData(o).addFilters(a?.filterData).addDefinitionsPath(d,l).addRequestUrls(e).addQuery(a).addStatus(m.RequestStatus.SUBMITTED).addTimestamp().addMetrics(JSON.parse(e.body.sections)).build();break}default:break}await r.requestedReportService.addReport(c.id,f)};async function K(e,t,r,a,i,o){return Promise.all(e.map(p=>t.requestAsyncReport(r,a,p.id,{...i.query,dataProductDefinitionsPath:o}).then(n=>{const{executionId:s,tableId:c}=n;return{executionId:s,tableId:c,variantId:p.id}})))}const W=async({req:e,res:t,token:r,dashboardService:a,reportingService:i})=>{const{definitionsPath:o,dpdPathFromQuery:p}=y.default.getValues(t),{reportId:n,id:s,type:c}=e.body;let d,l,u,R,f,D=[];c===m.ReportType.REPORT&&(f=await i.getDefinition(r,n,s,o),d=f?f.variant.specification?.fields:[],l=x.default.setQueryFromFilters(e,d),{executionId:u,tableId:R}=await i.requestAsyncReport(r,n,s,{...l.query,dataProductDefinitionsPath:o}),D=f.variant.childVariants??[]),c===m.ReportType.DASHBOARD&&(f=await a.getDefinition(r,n,s,o),d=f?f.filterFields:[],l=x.default.setQueryFromFilters(e,d),{executionId:u,tableId:R}=await a.requestAsyncDashboard(r,n,s,{...l.query,dataProductDefinitionsPath:o}));const S=await K(D,i,r,n,l,o);return{executionData:{executionId:u,tableId:R,...p&&{dataProductDefinitionsPath:o}},childExecutionData:S,queryData:l}},X=async({token:e,reportId:t,definitionPath:r,services:a,definition:i})=>{const n=(await a.reportingService.getDefinitions(e,r)).find(u=>u.id===t).name,{name:s,description:c,sections:d,filterFields:l}=i;return{reportName:n,name:s,description:c,sections:d||[],fields:l}},Y=async e=>({definition:e,reportName:e.name,name:e.variant.name,description:e.variant.description||e.description,template:e.variant.specification,fields:e?.variant?.specification?.fields,interactive:e?.variant?.interactive}),Q=async(e,t,r,a)=>{const{token:i,definitionsPath:o}=y.default.getValues(t),{reportId:p,id:n,variantId:s,type:c}=e.params;return await(c===m.ReportType.REPORT?a.reportingService:a.dashboardService).getDefinition(i,p,s||n,o)},Z=async(e,t,r,a,i,o)=>{const{reportId:p,id:n}=e.params;let s=await x.default.renderFilters(r,a);s.filters=b.default.setUserContextDefaults(t,s.filters);const c=await i.defaultFilterValuesService.get(o,p,n,V.FiltersType.REQUEST);return c&&(s=b.default.setFilterValuesFromSavedDefaults(s.filters,s.sortBy,c)),s.filters=U.default.setFilterValuesFromRequest(s.filters,e),{filtersData:s,defaultFilterValues:c}},B=async({req:e,res:t,services:r})=>{const{token:a}=y.default.getValues(t),i={req:e,res:t,token:a},{executionData:o,queryData:p,childExecutionData:n}=await W({...i,dashboardService:r.dashboardService,reportingService:r.reportingService});return o&&await O({req:e,res:t,services:r,queryData:p,executionData:o,childExecutionData:n}),o},C=async({req:e,res:t,services:r})=>{const{token:a,dprUser:i,definitionsPath:o}=y.default.getValues(t),{reportId:p,id:n,executionId:s,type:c}=e.params;let d;c===m.ReportType.REPORT&&(d=r.reportingService),c===m.ReportType.DASHBOARD&&(d=r.dashboardService);const l=await d.cancelAsyncRequest(a,p,n,s,o);l&&l.cancellationSucceeded&&await r.requestedReportService.updateStatus(s,i.id,m.RequestStatus.ABORTED)},N=async({req:e,res:t,services:r,next:a})=>{try{const{token:i,csrfToken:o,definitionsPath:p,dpdPathFromQuery:n,dprUser:s}=y.default.getValues(t),{reportId:c,type:d,id:l}=e.params,{definition:u}=t.locals,R=e.query.defaultsSaved,f={token:i,reportId:c,definitionPath:p,services:r};let D,S,v,H,F,A,E,w,I;d===m.ReportType.REPORT&&({name:D,reportName:S,description:v,fields:F,interactive:E}=await Y(u)),d===m.ReportType.DASHBOARD&&({name:D,reportName:S,description:v,sections:A,fields:F}=await X({...f,definition:u})),F&&({filtersData:w,defaultFilterValues:I}=await Z(e,t,F,E,r,s.id));const M={reportName:S,name:D,description:v,reportId:c,id:l,...n&&{definitionPath:p},csrfToken:o,template:H,sections:A,hasDefaults:I?.length>0,defaultsSaved:R,type:d};return{title:`Request ${d}`,filtersDescription:`Customise your ${d} using the filters below and submit your request.`,filtersData:w,reportData:M}}catch(i){return a(i),!1}},k=e=>Object.keys(e.body).filter(t=>t.includes("filters.")).filter(t=>!!e.body[t]).map(t=>({name:t,value:e.body[t]}));var ee={request:B,cancelRequest:C,renderRequest:N,getFiltersFromReqBody:k,getDefintionByType:Q};0&&(module.exports={cancelRequest,getDefintionByType,getFiltersFromReqBody,renderRequest,request,updateStore});
2
2
  //# sourceMappingURL=utils.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../src/dpr/routes/journeys/request-report/filters/utils.ts"],
4
- "sourcesContent": ["/* eslint-disable no-param-reassign */\nimport { Request, Response, NextFunction } from 'express'\n\n// Utils\nimport FiltersFormUtils from '../../../../components/_async/async-filters-form/utils'\nimport LocalsHelper from '../../../../utils/localsHelper'\nimport FiltersUtils from '../../../../components/_filters/utils'\nimport { removeDuplicates } from '../../../../utils/reportStoreHelper'\nimport UserStoreItemBuilder from '../../../../utils/UserStoreItemBuilder'\n\n// Types\nimport type ReportingService from '../../../../services/reportingService'\nimport { ReportType, RequestFormData, RequestStatus } from '../../../../types/UserReports'\nimport type { ExecutionData, ChildReportExecutionData } from '../../../../types/ExecutionData'\nimport type { AsyncReportUtilsParams, RequestDataResult, RequestReportData } from '../../../../types/AsyncReportUtils'\nimport type {\n RenderFiltersReturnValue,\n SetQueryFromFiltersResult,\n} from '../../../../components/_async/async-filters-form/types'\nimport type { components } from '../../../../types/api'\nimport type { DashboardDefinition } from '../../../../components/_dashboards/dashboard/types'\nimport type { Services } from '../../../../types/Services'\nimport type DashboardService from '../../../../services/dashboardService'\nimport PersonalistionUtils from '../../../../utils/Personalisation/personalisationUtils'\nimport { FiltersType } from '../../../../components/_filters/filtersTypeEnum'\n\n/**\n * Updates the store with the request details\n *\n * @param {Request} req\n * @param {Response} res\n * @param {Services} services\n * @param {SetQueryFromFiltersResult} querySummaryData\n * @param {string} executionData\n * @return {*} {Promise<string>}\n */\nexport const updateStore = async ({\n req,\n res,\n services,\n queryData,\n executionData,\n childExecutionData,\n}: {\n req: Request\n res: Response\n services: Services\n queryData?: SetQueryFromFiltersResult\n executionData: ExecutionData\n childExecutionData: Array<ChildReportExecutionData>\n}): Promise<void> => {\n const { search, id, type } = req.body\n const { dprUser, definitionsPath, dpdPathFromQuery } = LocalsHelper.getValues(res)\n\n await removeDuplicates({ storeService: services.requestedReportService, userId: dprUser.id, id, search })\n await removeDuplicates({ storeService: services.recentlyViewedService, userId: dprUser.id, id, search })\n\n const requestFormData: RequestFormData = req.body\n const reportData = {\n type: requestFormData.type as ReportType,\n reportId: requestFormData.reportId,\n reportName: requestFormData.reportName,\n description: requestFormData.description,\n id: requestFormData.id,\n name: requestFormData.name,\n }\n\n let requestedReportData\n switch (type) {\n case ReportType.REPORT:\n requestedReportData = new UserStoreItemBuilder(reportData, requestFormData)\n .addExecutionData(executionData)\n .addChildExecutionData(childExecutionData)\n .addFilters(queryData?.filterData)\n .addSortData(queryData?.sortData)\n .addDefinitionsPath(definitionsPath, dpdPathFromQuery)\n .addRequestUrls(req)\n .addQuery(queryData)\n .addStatus(RequestStatus.SUBMITTED)\n .addTimestamp()\n .build()\n break\n case ReportType.DASHBOARD: {\n requestedReportData = new UserStoreItemBuilder(reportData, requestFormData)\n .addExecutionData(executionData)\n .addChildExecutionData(childExecutionData)\n .addFilters(queryData?.filterData)\n .addDefinitionsPath(definitionsPath, dpdPathFromQuery)\n .addRequestUrls(req)\n .addQuery(queryData)\n .addStatus(RequestStatus.SUBMITTED)\n .addTimestamp()\n .addMetrics(JSON.parse(req.body.sections))\n .build()\n break\n }\n default:\n break\n }\n\n await services.requestedReportService.addReport(dprUser.id, requestedReportData)\n}\n\nasync function requestChildReports(\n childVariants: Array<components['schemas']['ChildVariantDefinition']>,\n reportingService: ReportingService,\n token: string,\n reportId: string,\n queryData: SetQueryFromFiltersResult,\n dataProductDefinitionsPath: string,\n): Promise<Array<ChildReportExecutionData>> {\n return Promise.all(\n childVariants.map((childVariant) =>\n reportingService\n .requestAsyncReport(token, reportId, childVariant.id, {\n ...queryData.query,\n dataProductDefinitionsPath,\n })\n .then((response) => {\n const { executionId, tableId } = response\n return { executionId, tableId, variantId: childVariant.id }\n }),\n ),\n )\n}\n\nconst requestProduct = async ({\n req,\n res,\n token,\n dashboardService,\n reportingService,\n}: {\n req: Request\n res: Response\n token: string\n dashboardService: DashboardService\n reportingService: ReportingService\n}): Promise<{\n executionData: ExecutionData\n childExecutionData: Array<ChildReportExecutionData>\n queryData: SetQueryFromFiltersResult\n}> => {\n const { definitionsPath: dataProductDefinitionsPath, dpdPathFromQuery } = LocalsHelper.getValues(res)\n const { reportId, id, type } = req.body\n\n let fields\n let queryData\n let executionId\n let tableId\n let definition\n let childVariants: components['schemas']['ChildVariantDefinition'][] = []\n\n if (type === ReportType.REPORT) {\n definition = await reportingService.getDefinition(token, reportId, id, dataProductDefinitionsPath)\n\n fields = definition ? definition.variant.specification?.fields : []\n queryData = FiltersFormUtils.setQueryFromFilters(req, fields)\n ;({ executionId, tableId } = await reportingService.requestAsyncReport(token, reportId, id, {\n ...queryData.query,\n dataProductDefinitionsPath,\n }))\n childVariants = definition.variant.childVariants ?? []\n }\n\n if (type === ReportType.DASHBOARD) {\n definition = await dashboardService.getDefinition(token, reportId, id, dataProductDefinitionsPath)\n\n fields = definition ? definition.filterFields : []\n queryData = FiltersFormUtils.setQueryFromFilters(req, fields)\n ;({ executionId, tableId } = await dashboardService.requestAsyncDashboard(token, reportId, id, {\n ...queryData.query,\n dataProductDefinitionsPath,\n }))\n }\n\n const childExecutionData = await requestChildReports(\n childVariants,\n reportingService,\n token,\n reportId,\n queryData,\n dataProductDefinitionsPath,\n )\n\n const executionData = {\n executionId,\n tableId,\n ...(dpdPathFromQuery && { dataProductDefinitionsPath }),\n }\n\n return {\n executionData,\n childExecutionData,\n queryData,\n }\n}\n\nconst renderDashboardRequestData = async ({\n token,\n reportId,\n definitionPath,\n services,\n definition,\n}: {\n token: string\n reportId: string\n definitionPath: string\n services: Services\n definition: DashboardDefinition\n}) => {\n const productDefinitions = await services.reportingService.getDefinitions(token, definitionPath)\n const productDefinition = productDefinitions.find(\n (def: components['schemas']['ReportDefinitionSummary']) => def.id === reportId,\n )\n const reportName = productDefinition.name\n const { name, description, sections, filterFields: fields } = definition\n\n return {\n reportName,\n name,\n description,\n sections: sections || [],\n fields,\n }\n}\n\nconst renderReportRequestData = async (definition: components['schemas']['SingleVariantReportDefinition']) => {\n return {\n definition,\n reportName: definition.name,\n name: definition.variant.name,\n description: definition.variant.description || definition.description,\n template: definition.variant.specification,\n fields: definition?.variant?.specification?.fields,\n interactive: definition?.variant?.interactive,\n }\n}\n\nexport const getDefintionByType = async (req: Request, res: Response, next: NextFunction, services: Services) => {\n const { token, definitionsPath } = LocalsHelper.getValues(res)\n const { reportId, id, variantId, type } = req.params\n\n const service = type === ReportType.REPORT ? services.reportingService : services.dashboardService\n const definition = await service.getDefinition(token, reportId, variantId || id, definitionsPath)\n\n return definition\n}\n\nconst getFilterData = async (\n req: Request,\n res: Response,\n fields: components['schemas']['FieldDefinition'][],\n interactive: boolean,\n services: Services,\n userId: string,\n) => {\n const { reportId, id } = req.params\n\n let filtersData = <RenderFiltersReturnValue>await FiltersFormUtils.renderFilters(fields, interactive)\n filtersData.filters = PersonalistionUtils.setUserContextDefaults(res, filtersData.filters)\n\n const defaultFilterValues = await services.defaultFilterValuesService.get(userId, reportId, id, FiltersType.REQUEST)\n if (defaultFilterValues) {\n filtersData = PersonalistionUtils.setFilterValuesFromSavedDefaults(\n filtersData.filters,\n filtersData.sortBy,\n defaultFilterValues,\n )\n }\n\n filtersData.filters = FiltersUtils.setFilterValuesFromRequest(filtersData.filters, req)\n\n return { filtersData, defaultFilterValues }\n}\n\n/**\n * Sends the request for the async report\n *\n * @param {AsyncReportUtilsParams} { req, res, services }\n * @return {*}\n */\nexport const request = async ({ req, res, services }: AsyncReportUtilsParams) => {\n const { token } = LocalsHelper.getValues(res)\n const requestArgs = { req, res, token }\n\n const { executionData, queryData, childExecutionData } = await requestProduct({\n ...requestArgs,\n dashboardService: services.dashboardService,\n reportingService: services.reportingService,\n })\n\n if (executionData) {\n await updateStore({\n req,\n res,\n services,\n queryData,\n executionData,\n childExecutionData,\n })\n }\n\n return executionData\n}\n\nexport const cancelRequest = async ({ req, res, services }: AsyncReportUtilsParams) => {\n const { token, dprUser, definitionsPath } = LocalsHelper.getValues(res)\n const { reportId, id, executionId, type } = req.params\n\n let service\n if (type === ReportType.REPORT) service = services.reportingService\n if (type === ReportType.DASHBOARD) service = services.dashboardService\n\n const response = await service.cancelAsyncRequest(token, reportId, id, executionId, definitionsPath)\n\n if (response && response.cancellationSucceeded) {\n await services.requestedReportService.updateStatus(executionId, dprUser.id, RequestStatus.ABORTED)\n }\n}\n\n/**\n * Returns the data required for rendering the async filters component\n *\n * @param {AsyncReportUtilsParams} { req, res, dataSources }\n * @return {*}\n */\nexport const renderRequest = async ({\n req,\n res,\n services,\n next,\n}: AsyncReportUtilsParams): Promise<RequestDataResult | boolean> => {\n try {\n const { token, csrfToken, definitionsPath: definitionPath, dpdPathFromQuery, dprUser } = LocalsHelper.getValues(res)\n const { reportId, type, id } = req.params\n const { definition } = res.locals\n const defaultsSaved = <string>req.query.defaultsSaved\n\n const definitionApiArgs = { token, reportId, definitionPath, services }\n\n let name\n let reportName\n let description\n let template\n let fields: components['schemas']['FieldDefinition'][]\n let sections\n let interactive\n let filtersData\n let defaultFilterValues\n\n if (type === ReportType.REPORT) {\n ;({ name, reportName, description, fields, interactive } = await renderReportRequestData(definition))\n }\n\n if (type === ReportType.DASHBOARD) {\n ;({ name, reportName, description, sections, fields } = await renderDashboardRequestData({\n ...definitionApiArgs,\n definition,\n }))\n }\n\n if (fields) {\n ;({ filtersData, defaultFilterValues } = await getFilterData(req, res, fields, interactive, services, dprUser.id))\n }\n\n const reportData: RequestReportData = {\n reportName,\n name,\n description,\n reportId,\n id,\n ...(dpdPathFromQuery && { definitionPath }),\n csrfToken,\n template,\n sections,\n hasDefaults: defaultFilterValues?.length,\n defaultsSaved,\n type: type as ReportType,\n }\n\n return {\n title: `Request ${type}`,\n filtersDescription: `Customise your ${type} using the filters below and submit your request.`,\n filtersData,\n reportData,\n }\n } catch (error) {\n next(error)\n return false\n }\n}\n\nexport const getFiltersFromReqBody = (req: Request) => {\n return Object.keys(req.body)\n .filter((attr) => attr.includes('filters.'))\n .filter((attr) => !!req.body[attr])\n .map((attr) => {\n return { name: attr, value: req.body[attr] }\n })\n}\n\nexport default {\n request,\n cancelRequest,\n renderRequest,\n getFiltersFromReqBody,\n getDefintionByType,\n}\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["/* eslint-disable no-param-reassign */\nimport { Request, Response, NextFunction } from 'express'\n\n// Utils\nimport FiltersFormUtils from '../../../../components/_async/async-filters-form/utils'\nimport LocalsHelper from '../../../../utils/localsHelper'\nimport FiltersUtils from '../../../../components/_filters/utils'\nimport { removeDuplicates } from '../../../../utils/reportStoreHelper'\nimport UserStoreItemBuilder from '../../../../utils/UserStoreItemBuilder'\n\n// Types\nimport type ReportingService from '../../../../services/reportingService'\nimport { ReportType, RequestFormData, RequestStatus } from '../../../../types/UserReports'\nimport type { ExecutionData, ChildReportExecutionData } from '../../../../types/ExecutionData'\nimport type { AsyncReportUtilsParams, RequestDataResult, RequestReportData } from '../../../../types/AsyncReportUtils'\nimport type {\n RenderFiltersReturnValue,\n SetQueryFromFiltersResult,\n} from '../../../../components/_async/async-filters-form/types'\nimport type { components } from '../../../../types/api'\nimport type { Services } from '../../../../types/Services'\nimport type DashboardService from '../../../../services/dashboardService'\nimport PersonalistionUtils from '../../../../utils/Personalisation/personalisationUtils'\nimport { FiltersType } from '../../../../components/_filters/filtersTypeEnum'\n\n/**\n * Updates the store with the request details\n *\n * @param {Request} req\n * @param {Response} res\n * @param {Services} services\n * @param {SetQueryFromFiltersResult} querySummaryData\n * @param {string} executionData\n * @return {*} {Promise<string>}\n */\nexport const updateStore = async ({\n req,\n res,\n services,\n queryData,\n executionData,\n childExecutionData,\n}: {\n req: Request\n res: Response\n services: Services\n queryData?: SetQueryFromFiltersResult\n executionData: ExecutionData\n childExecutionData: Array<ChildReportExecutionData>\n}): Promise<void> => {\n const { search, id, type } = req.body\n const { dprUser, definitionsPath, dpdPathFromQuery } = LocalsHelper.getValues(res)\n\n await removeDuplicates({ storeService: services.requestedReportService, userId: dprUser.id, id, search })\n await removeDuplicates({ storeService: services.recentlyViewedService, userId: dprUser.id, id, search })\n\n const requestFormData: RequestFormData = req.body\n const reportData = {\n type: requestFormData.type as ReportType,\n reportId: requestFormData.reportId,\n reportName: requestFormData.reportName,\n description: requestFormData.description,\n id: requestFormData.id,\n name: requestFormData.name,\n }\n\n let requestedReportData\n switch (type) {\n case ReportType.REPORT:\n requestedReportData = new UserStoreItemBuilder(reportData, requestFormData)\n .addExecutionData(executionData)\n .addChildExecutionData(childExecutionData)\n .addFilters(queryData?.filterData)\n .addSortData(queryData?.sortData)\n .addDefinitionsPath(definitionsPath, dpdPathFromQuery)\n .addRequestUrls(req)\n .addQuery(queryData)\n .addStatus(RequestStatus.SUBMITTED)\n .addTimestamp()\n .build()\n break\n case ReportType.DASHBOARD: {\n requestedReportData = new UserStoreItemBuilder(reportData, requestFormData)\n .addExecutionData(executionData)\n .addChildExecutionData(childExecutionData)\n .addFilters(queryData?.filterData)\n .addDefinitionsPath(definitionsPath, dpdPathFromQuery)\n .addRequestUrls(req)\n .addQuery(queryData)\n .addStatus(RequestStatus.SUBMITTED)\n .addTimestamp()\n .addMetrics(JSON.parse(req.body.sections))\n .build()\n break\n }\n default:\n break\n }\n\n await services.requestedReportService.addReport(dprUser.id, requestedReportData)\n}\n\nasync function requestChildReports(\n childVariants: Array<components['schemas']['ChildVariantDefinition']>,\n reportingService: ReportingService,\n token: string,\n reportId: string,\n queryData: SetQueryFromFiltersResult,\n dataProductDefinitionsPath: string,\n): Promise<Array<ChildReportExecutionData>> {\n return Promise.all(\n childVariants.map((childVariant) =>\n reportingService\n .requestAsyncReport(token, reportId, childVariant.id, {\n ...queryData.query,\n dataProductDefinitionsPath,\n })\n .then((response) => {\n const { executionId, tableId } = response\n return { executionId, tableId, variantId: childVariant.id }\n }),\n ),\n )\n}\n\nconst requestProduct = async ({\n req,\n res,\n token,\n dashboardService,\n reportingService,\n}: {\n req: Request\n res: Response\n token: string\n dashboardService: DashboardService\n reportingService: ReportingService\n}): Promise<{\n executionData: ExecutionData\n childExecutionData: Array<ChildReportExecutionData>\n queryData: SetQueryFromFiltersResult\n}> => {\n const { definitionsPath: dataProductDefinitionsPath, dpdPathFromQuery } = LocalsHelper.getValues(res)\n const { reportId, id, type } = req.body\n\n let fields\n let queryData\n let executionId\n let tableId\n let definition\n let childVariants: components['schemas']['ChildVariantDefinition'][] = []\n\n if (type === ReportType.REPORT) {\n definition = await reportingService.getDefinition(token, reportId, id, dataProductDefinitionsPath)\n\n fields = definition ? definition.variant.specification?.fields : []\n queryData = FiltersFormUtils.setQueryFromFilters(req, fields)\n ;({ executionId, tableId } = await reportingService.requestAsyncReport(token, reportId, id, {\n ...queryData.query,\n dataProductDefinitionsPath,\n }))\n childVariants = definition.variant.childVariants ?? []\n }\n\n if (type === ReportType.DASHBOARD) {\n definition = await dashboardService.getDefinition(token, reportId, id, dataProductDefinitionsPath)\n\n fields = definition ? definition.filterFields : []\n queryData = FiltersFormUtils.setQueryFromFilters(req, fields)\n ;({ executionId, tableId } = await dashboardService.requestAsyncDashboard(token, reportId, id, {\n ...queryData.query,\n dataProductDefinitionsPath,\n }))\n }\n\n const childExecutionData = await requestChildReports(\n childVariants,\n reportingService,\n token,\n reportId,\n queryData,\n dataProductDefinitionsPath,\n )\n\n const executionData = {\n executionId,\n tableId,\n ...(dpdPathFromQuery && { dataProductDefinitionsPath }),\n }\n\n return {\n executionData,\n childExecutionData,\n queryData,\n }\n}\n\nconst renderDashboardRequestData = async ({\n token,\n reportId,\n definitionPath,\n services,\n definition,\n}: {\n token: string\n reportId: string\n definitionPath: string\n services: Services\n definition: components['schemas']['DashboardDefinition']\n}) => {\n const productDefinitions = await services.reportingService.getDefinitions(token, definitionPath)\n const productDefinition = productDefinitions.find(\n (def: components['schemas']['ReportDefinitionSummary']) => def.id === reportId,\n )\n const reportName = productDefinition.name\n const { name, description, sections, filterFields: fields } = definition\n\n return {\n reportName,\n name,\n description,\n sections: sections || [],\n fields,\n }\n}\n\nconst renderReportRequestData = async (definition: components['schemas']['SingleVariantReportDefinition']) => {\n return {\n definition,\n reportName: definition.name,\n name: definition.variant.name,\n description: definition.variant.description || definition.description,\n template: definition.variant.specification,\n fields: definition?.variant?.specification?.fields,\n interactive: definition?.variant?.interactive,\n }\n}\n\nexport const getDefintionByType = async (req: Request, res: Response, next: NextFunction, services: Services) => {\n const { token, definitionsPath } = LocalsHelper.getValues(res)\n const { reportId, id, variantId, type } = req.params\n\n const service = type === ReportType.REPORT ? services.reportingService : services.dashboardService\n const definition = await service.getDefinition(token, reportId, variantId || id, definitionsPath)\n\n return definition\n}\n\nconst getFilterData = async (\n req: Request,\n res: Response,\n fields: components['schemas']['FieldDefinition'][],\n interactive: boolean,\n services: Services,\n userId: string,\n) => {\n const { reportId, id } = req.params\n\n let filtersData = <RenderFiltersReturnValue>await FiltersFormUtils.renderFilters(fields, interactive)\n filtersData.filters = PersonalistionUtils.setUserContextDefaults(res, filtersData.filters)\n\n const defaultFilterValues = await services.defaultFilterValuesService.get(userId, reportId, id, FiltersType.REQUEST)\n if (defaultFilterValues) {\n filtersData = PersonalistionUtils.setFilterValuesFromSavedDefaults(\n filtersData.filters,\n filtersData.sortBy,\n defaultFilterValues,\n )\n }\n\n filtersData.filters = FiltersUtils.setFilterValuesFromRequest(filtersData.filters, req)\n\n return { filtersData, defaultFilterValues }\n}\n\n/**\n * Sends the request for the async report\n *\n * @param {AsyncReportUtilsParams} { req, res, services }\n * @return {*}\n */\nexport const request = async ({ req, res, services }: AsyncReportUtilsParams) => {\n const { token } = LocalsHelper.getValues(res)\n const requestArgs = { req, res, token }\n\n const { executionData, queryData, childExecutionData } = await requestProduct({\n ...requestArgs,\n dashboardService: services.dashboardService,\n reportingService: services.reportingService,\n })\n\n if (executionData) {\n await updateStore({\n req,\n res,\n services,\n queryData,\n executionData,\n childExecutionData,\n })\n }\n\n return executionData\n}\n\nexport const cancelRequest = async ({ req, res, services }: AsyncReportUtilsParams) => {\n const { token, dprUser, definitionsPath } = LocalsHelper.getValues(res)\n const { reportId, id, executionId, type } = req.params\n\n let service\n if (type === ReportType.REPORT) service = services.reportingService\n if (type === ReportType.DASHBOARD) service = services.dashboardService\n\n const response = await service.cancelAsyncRequest(token, reportId, id, executionId, definitionsPath)\n\n if (response && response.cancellationSucceeded) {\n await services.requestedReportService.updateStatus(executionId, dprUser.id, RequestStatus.ABORTED)\n }\n}\n\n/**\n * Returns the data required for rendering the async filters component\n *\n * @param {AsyncReportUtilsParams} { req, res, dataSources }\n * @return {*}\n */\nexport const renderRequest = async ({\n req,\n res,\n services,\n next,\n}: AsyncReportUtilsParams): Promise<RequestDataResult | boolean> => {\n try {\n const { token, csrfToken, definitionsPath: definitionPath, dpdPathFromQuery, dprUser } = LocalsHelper.getValues(res)\n const { reportId, type, id } = req.params\n const { definition } = res.locals\n const defaultsSaved = <string>req.query.defaultsSaved\n\n const definitionApiArgs = { token, reportId, definitionPath, services }\n\n let name\n let reportName\n let description\n let template\n let fields: components['schemas']['FieldDefinition'][]\n let sections\n let interactive\n let filtersData\n let defaultFilterValues\n\n if (type === ReportType.REPORT) {\n ;({ name, reportName, description, fields, interactive } = await renderReportRequestData(definition))\n }\n\n if (type === ReportType.DASHBOARD) {\n ;({ name, reportName, description, sections, fields } = await renderDashboardRequestData({\n ...definitionApiArgs,\n definition,\n }))\n }\n\n if (fields) {\n ;({ filtersData, defaultFilterValues } = await getFilterData(req, res, fields, interactive, services, dprUser.id))\n }\n\n const reportData: RequestReportData = {\n reportName,\n name,\n description,\n reportId,\n id,\n ...(dpdPathFromQuery && { definitionPath }),\n csrfToken,\n template,\n sections,\n hasDefaults: defaultFilterValues?.length > 0,\n defaultsSaved,\n type: type as ReportType,\n }\n\n return {\n title: `Request ${type}`,\n filtersDescription: `Customise your ${type} using the filters below and submit your request.`,\n filtersData,\n reportData,\n }\n } catch (error) {\n next(error)\n return false\n }\n}\n\nexport const getFiltersFromReqBody = (req: Request) => {\n return Object.keys(req.body)\n .filter((attr) => attr.includes('filters.'))\n .filter((attr) => !!req.body[attr])\n .map((attr) => {\n return { name: attr, value: req.body[attr] }\n })\n}\n\nexport default {\n request,\n cancelRequest,\n renderRequest,\n getFiltersFromReqBody,\n getDefintionByType,\n}\n"],
5
+ "mappings": "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",
6
6
  "names": ["utils_exports", "__export", "cancelRequest", "utils_default", "getDefintionByType", "getFiltersFromReqBody", "renderRequest", "request", "updateStore", "__toCommonJS", "import_utils", "import_localsHelper", "import_reportStoreHelper", "import_UserStoreItemBuilder", "import_UserReports", "import_personalisationUtils", "import_filtersTypeEnum", "req", "res", "services", "queryData", "executionData", "childExecutionData", "search", "id", "type", "dprUser", "definitionsPath", "dpdPathFromQuery", "LocalsHelper", "requestFormData", "reportData", "requestedReportData", "UserStoreItemBuilder", "requestChildReports", "childVariants", "reportingService", "token", "reportId", "dataProductDefinitionsPath", "childVariant", "response", "executionId", "tableId", "requestProduct", "dashboardService", "fields", "definition", "FiltersFormUtils", "renderDashboardRequestData", "definitionPath", "reportName", "def", "name", "description", "sections", "renderReportRequestData", "next", "variantId", "getFilterData", "interactive", "userId", "filtersData", "PersonalistionUtils", "defaultFilterValues", "FiltersUtils", "requestArgs", "service", "csrfToken", "defaultsSaved", "definitionApiArgs", "template", "error", "attr"]
7
7
  }
@@ -18,7 +18,6 @@ import type {
18
18
  SetQueryFromFiltersResult,
19
19
  } from '../../../../components/_async/async-filters-form/types'
20
20
  import type { components } from '../../../../types/api'
21
- import type { DashboardDefinition } from '../../../../components/_dashboards/dashboard/types'
22
21
  import type { Services } from '../../../../types/Services'
23
22
  import type DashboardService from '../../../../services/dashboardService'
24
23
  import PersonalistionUtils from '../../../../utils/Personalisation/personalisationUtils'
@@ -207,7 +206,7 @@ const renderDashboardRequestData = async ({
207
206
  reportId: string
208
207
  definitionPath: string
209
208
  services: Services
210
- definition: DashboardDefinition
209
+ definition: components['schemas']['DashboardDefinition']
211
210
  }) => {
212
211
  const productDefinitions = await services.reportingService.getDefinitions(token, definitionPath)
213
212
  const productDefinition = productDefinitions.find(
@@ -374,7 +373,7 @@ export const renderRequest = async ({
374
373
  csrfToken,
375
374
  template,
376
375
  sections,
377
- hasDefaults: defaultFilterValues?.length,
376
+ hasDefaults: defaultFilterValues?.length > 0,
378
377
  defaultsSaved,
379
378
  type: type as ReportType,
380
379
  }
@@ -1,2 +1,2 @@
1
- var d=Object.create;var u=Object.defineProperty;var y=Object.getOwnPropertyDescriptor;var a=Object.getOwnPropertyNames;var r=Object.getPrototypeOf,b=Object.prototype.hasOwnProperty;var h=(e,i,s,t)=>{if(i&&typeof i=="object"||typeof i=="function")for(let o of a(i))!b.call(e,o)&&o!==s&&u(e,o,{get:()=>i[o],enumerable:!(t=y(i,o))||t.enumerable});return e};var R=(e,i,s)=>(s=e!=null?d(r(e)):{},h(i||!e||!e.__esModule?u(s,"default",{value:e,enumerable:!0}):s,e));var c=require("cypress-tests/cypressUtils"),n=R(require("dayjs")),l=require("test-app/routes/integrationTests/redisStateTestUtils");context("Request status",()=>{const e="/embedded/platform/";beforeEach(()=>{cy.task("resetStubs"),cy.task("resetRedis"),cy.task("stubDefinitions"),cy.task("stubGetProductCollections"),cy.task("stubDefinitionRequestExamplesSuccess"),cy.task("stubViewAsyncReportingResults"),cy.task("stubRequestSuccessReportTablesCount"),cy.task("stubRequestSuccessResult20WithDelay")}),describe("post request",()=>{const i="";it("should show the status pages",()=>{cy.visit(e),cy.findByLabelText(/Reports catalogue.*/i).within(()=>{cy.findByRole("row",{name:(s,t)=>t.textContent.includes("Successful Report")&&t.textContent.includes("this will succeed")}).within(()=>{cy.findByRole("link",{name:"Request report"}).click()})}),cy.findByRole("button",{name:/Request/}).click(),(0,c.checkA11y)(),cy.task("stubReportsPickedStatus"),cy.findByText(/picked/i).should("be.visible"),(0,c.checkA11y)(),cy.task("stubReportsStartedStatus"),cy.findByText(/started/i).should("be.visible"),(0,c.checkA11y)(),cy.task("stubReportsFinishedStatus"),cy.findAllByRole("heading",{name:/successful report/i}).should("be.visible")}),it("should timeout",()=>{cy.visit(e),cy.findByLabelText(/Reports catalogue.*/i).within(()=>{cy.findByRole("row",{name:(s,t)=>t.textContent.includes("Successful Report")&&t.textContent.includes("this will succeed")}).within(()=>{cy.findByRole("link",{name:"Request report"}).click()})}),cy.findByRole("button",{name:/Request/}).click(),(0,c.checkA11y)(),cy.task("stubReportsPickedStatus"),cy.findByText("PICKED").should("be.visible"),(0,l.getRedisState)().then(s=>{const t={...s.body};t.requestedReports[0].timestamp.requested=(0,n.default)(s.body.requestedReports[0].timestamp.requested).add(-1,"days").toDate(),(0,l.setRedisState)(t)}),cy.findByText(/Request taking too long/).should("be.visible"),(0,c.checkA11y)()}),describe("failure status pages",()=>{beforeEach(()=>{cy.task("resetRedis"),cy.task("stubReportsPickedStatus"),cy.visit(e),cy.findByLabelText(/Reports catalogue.*/i).within(()=>{cy.findByRole("row",{name:(s,t)=>t.textContent.includes("Successful Report")&&t.textContent.includes("this will succeed")}).within(()=>{cy.findByRole("link",{name:"Request report"}).click()})}),cy.findByRole("button",{name:/Request/}).click(),cy.findByText(/submitted/i).should("be.visible"),cy.findByText(/picked/i).should("be.visible")}),it("should show the aborted status page",()=>{cy.task("stubReportsAbortedStatus"),cy.findByText(/aborted/i).should("be.visible"),cy.injectAxe(),cy.checkA11y()}),it("should show the expired status page",()=>{cy.task("stubReportsExpiredStatus"),cy.findByText(/expired/i).should("be.visible"),cy.injectAxe(),cy.checkA11y()}),it("should show the failed status page",()=>{cy.task("stubReportsFailedStatus"),cy.findByText(/your report has failed to generate/i).should("be.visible"),cy.findByRole("group").contains("Show full error").should("be.visible"),cy.findByText(/Show full error/).click(),cy.findByText(/a developer message goes here/).should("be.visible"),cy.findAllByRole("list").contains("Report ID: request-examples").should("be.visible"),cy.findAllByRole("list").contains(`Execution ID: ${i}`).should("be.visible"),cy.findAllByRole("list").contains("Table ID: tblId_").should("be.visible"),cy.injectAxe(),cy.checkA11y()})})})});
1
+ var n=Object.create;var u=Object.defineProperty;var y=Object.getOwnPropertyDescriptor;var a=Object.getOwnPropertyNames;var r=Object.getPrototypeOf,b=Object.prototype.hasOwnProperty;var h=(e,i,s,t)=>{if(i&&typeof i=="object"||typeof i=="function")for(let o of a(i))!b.call(e,o)&&o!==s&&u(e,o,{get:()=>i[o],enumerable:!(t=y(i,o))||t.enumerable});return e};var R=(e,i,s)=>(s=e!=null?n(r(e)):{},h(i||!e||!e.__esModule?u(s,"default",{value:e,enumerable:!0}):s,e));var c=require("cypress-tests/cypressUtils"),d=R(require("dayjs")),l=require("test-app/routes/integrationTests/redisStateTestUtils");context("Request status",()=>{const e="/embedded/platform/";beforeEach(()=>{(0,c.executeReportStubs)(),cy.task("stubDefinitionRequestExamplesSuccess"),cy.task("stubRequestSuccessResult20WithDelay")}),describe("post request",()=>{const i="";it("should show the status pages",()=>{cy.visit(e),cy.findByLabelText(/Reports catalogue.*/i).within(()=>{cy.findByRole("row",{name:(s,t)=>t.textContent.includes("Successful Report")&&t.textContent.includes("this will succeed")}).within(()=>{cy.findByRole("link",{name:"Request report"}).click()})}),cy.findByRole("button",{name:/Request/}).click(),(0,c.checkA11y)(),cy.task("stubReportsPickedStatus"),cy.findByText(/picked/i).should("be.visible"),(0,c.checkA11y)(),cy.task("stubReportsStartedStatus"),cy.findByText(/started/i).should("be.visible"),(0,c.checkA11y)(),cy.task("stubReportsFinishedStatus"),cy.findAllByRole("heading",{name:/successful report/i}).should("be.visible")}),it("should timeout",()=>{cy.visit(e),cy.findByLabelText(/Reports catalogue.*/i).within(()=>{cy.findByRole("row",{name:(s,t)=>t.textContent.includes("Successful Report")&&t.textContent.includes("this will succeed")}).within(()=>{cy.findByRole("link",{name:"Request report"}).click()})}),cy.findByRole("button",{name:/Request/}).click(),(0,c.checkA11y)(),cy.task("stubReportsPickedStatus"),cy.findByText("PICKED").should("be.visible"),(0,l.getRedisState)().then(s=>{const t={...s.body};t.requestedReports[0].timestamp.requested=(0,d.default)(s.body.requestedReports[0].timestamp.requested).add(-1,"days").toDate(),(0,l.setRedisState)(t)}),cy.findByText(/Request taking too long/).should("be.visible"),(0,c.checkA11y)()}),describe("failure status pages",()=>{beforeEach(()=>{cy.task("resetRedis"),cy.task("stubReportsPickedStatus"),cy.visit(e),cy.findByLabelText(/Reports catalogue.*/i).within(()=>{cy.findByRole("row",{name:(s,t)=>t.textContent.includes("Successful Report")&&t.textContent.includes("this will succeed")}).within(()=>{cy.findByRole("link",{name:"Request report"}).click()})}),cy.findByRole("button",{name:/Request/}).click(),cy.findByText(/submitted/i).should("be.visible"),cy.findByText(/picked/i).should("be.visible")}),it("should show the aborted status page",()=>{cy.task("stubReportsAbortedStatus"),cy.findByText(/aborted/i).should("be.visible"),cy.injectAxe(),cy.checkA11y()}),it("should show the expired status page",()=>{cy.task("stubReportsExpiredStatus"),cy.findByText(/expired/i).should("be.visible"),cy.injectAxe(),cy.checkA11y()}),it("should show the failed status page",()=>{cy.task("stubReportsFailedStatus"),cy.findByText(/your report has failed to generate/i).should("be.visible"),cy.findByRole("group").contains("Show full error").should("be.visible"),cy.findByText(/Show full error/).click(),cy.findByText(/a developer message goes here/).should("be.visible"),cy.findAllByRole("list").contains("Report ID: request-examples").should("be.visible"),cy.findAllByRole("list").contains(`Execution ID: ${i}`).should("be.visible"),cy.findAllByRole("list").contains("Table ID: tblId_").should("be.visible"),cy.injectAxe(),cy.checkA11y()})})})});
2
2
  //# sourceMappingURL=tests.cy.js.map