addDashboardPanels()

in page-object-model/dashboard-page/dashboard-page.js [11:47]


  addDashboardPanels(keyword, type, multiplePages = true) {
    const replaceSpacesWithDashes = (keyword) => {
      return keyword.replace(/\s+/g, '-')
    }
  
    const iteratePages = () => {
      this.testRunner.get('[data-test-subj="pagination-button-next"]').then(($nextBtn) => {
        this.testRunner.get('[data-test-subj="savedObjectFinderItemList"]').should('be.visible')
        if ($nextBtn.is(':enabled')) {
          this.testRunner.wrap($nextBtn).click()
          this.testRunner.get(`[data-test-subj^="savedObjectTitle${replaceSpacesWithDashes(keyword)}"]`).should('be.visible').each(($button) => {
            this.testRunner.wrap($button).click()
            this.testRunner.get('[data-test-subj="toastCloseButton"').click({ multiple: true, force: true })
          })
          iteratePages()
        }
      })
    }
    this.testRunner.get('[data-test-subj="dashboardAddPanelButton"]').should('be.visible').click()
    this.testRunner.get('[data-test-subj="savedObjectFinderItemList"]').should('be.visible')
  
    this.testRunner.get('[data-test-subj="savedObjectFinderFilterButton"]').should('be.visible').click()
    this.testRunner.get(`[data-test-subj="savedObjectFinderFilter-${type}"]`).should('be.visible').click()
    this.testRunner.get('[data-test-subj="savedObjectFinderFilterButton"]').should('be.visible').click()
  
    this.testRunner.get('[data-test-subj="savedObjectFinderSearchInput"]').should('be.visible').type(keyword)
  
    this.testRunner.get(`[data-test-subj^="savedObjectTitle${replaceSpacesWithDashes(keyword)}"]`).should('be.visible').each(($button) => {
      this.testRunner.wrap($button).click()
      this.testRunner.get('[data-test-subj="toastCloseButton"').click({ multiple: true, force: true })
    }).then(() => {
      if (multiplePages) {
        this.testRunner.wrap(iteratePages())
      }
    })
    this.testRunner.get('[data-test-subj="euiFlyoutCloseButton"]').click()
  }