diff --git a/src/views/Analysis.vue b/src/views/Analysis.vue
index ea17f2c2a..031230d7e 100644
--- a/src/views/Analysis.vue
+++ b/src/views/Analysis.vue
@@ -103,12 +103,12 @@ along with this program. If not, see .
}
*/
- const table = useInitialOptions('tasksFilter', { props, emit }, true)
+ const table = useInitialOptions('table', { props, emit }, true)
return {
tasksFilter,
diff --git a/tests/e2e/specs/analysis.cy.js b/tests/e2e/specs/analysis.cy.js
index 4b568be12..d3286a7a8 100644
--- a/tests/e2e/specs/analysis.cy.js
+++ b/tests/e2e/specs/analysis.cy.js
@@ -265,3 +265,91 @@ describe('Analysis view', () => {
})
})
})
+
+function addView (view) {
+ cy.get('[data-cy=add-view-btn]').click()
+ cy.get(`#toolbar-add-${view}-view`).click()
+ // wait for menu to close
+ .should('not.be.exist')
+}
+
+describe('Filters and Options save state', () => {
+ const numTasks = sortedTasks.length
+ describe('Options save state', () => {
+ it.only('remembers table and box & whiskers toggle option when switching between workflows', () => {
+ cy.visit('/#/workspace/one')
+ addView('Analysis')
+ cy.get('.c-analysis [data-cy=box-plot-toggle]')
+ .click()
+ .get('.vue-apexcharts')
+ .should('be.visible')
+ // Navigate away
+ cy.visit('/#/')
+ cy.get('.c-dashboard')
+ // Navigate back
+ cy.visit('/#/workspace/one')
+ cy.get('.vue-apexcharts')
+ .should('be.visible')
+ })
+ })
+ describe('Filters save state', () => {
+ it('remembers task name, platform and timings when switching between workflows', () => {
+ cy.visit('/#/workspace/one')
+ addView('Analysis')
+ // Check default options
+ cy
+ .get('.c-analysis table > tbody > tr')
+ .should('have.length', numTasks)
+ .should('be.visible')
+ cy
+ .get('td')
+ .contains('30')
+ .should('be.visible')
+ // Set platform filter options
+ cy
+ .get('#c-analysis-filter-task-platforms')
+ .click({ force: true })
+ cy
+ .get('.v-list-item')
+ .contains('platform_1')
+ .click({ force: true })
+ // Set queue task name filter options
+ cy
+ .get('#c-analysis-filter-task-name')
+ .type('wait')
+ // Set task times filter options
+ cy
+ .get('#c-analysis-filter-task-timings')
+ .click({ force: true })
+ cy
+ .get('.v-list-item')
+ .contains('Queue')
+ .click({ force: true })
+ // Navigate away
+ cy.visit('/#/')
+ cy.get('.c-dashboard')
+ // Navigate back
+ cy.visit('/#/workspace/one')
+ // Check name filter
+ cy
+ .get('td')
+ .contains('waiting')
+ .should('be.visible')
+ // Check timing filter
+ cy
+ .get('td')
+ .contains('00:00:12')
+ .should('be.visible')
+ // Check platform filter
+ cy
+ .get('td')
+ .contains('platform_1')
+ .should('be.visible')
+ // Other checks
+ cy
+ .get('.c-analysis table > tbody > tr')
+ .should('have.length', 1)
+ .should('be.visible')
+ })
+ })
+})