0
0
mirror of https://github.com/PostHog/posthog.git synced 2024-11-29 19:16:37 +01:00
posthog/cypress/integration/funnels.js
Marius Andra 35aface03f
Fix funnel navigation step-merge (#4939)
* fix when new steps in the url get merged with old steps from values (new steps contain actions, old events)

* set default event in funnels

Co-authored-by: Paolo D'Amico <paolodamico@users.noreply.github.com>
2021-07-01 22:58:15 +00:00

70 lines
2.3 KiB
JavaScript

describe('Funnels', () => {
beforeEach(() => {
// :TRICKY: Race condition populating the first dropdown in funnel
cy.get('[data-test-filters-loading]').should('not.exist')
cy.get('[data-attr=insight-funnels-tab]').click()
cy.wait(200)
})
it('Add only events to funnel', () => {
cy.get('[data-attr=add-action-event-button]').click()
cy.get('[data-attr=save-funnel-button]').click() // `save-funnel-button` is actually calculate, keeping around to avoid losing data
cy.get('[data-attr=funnel-viz]').should('exist')
})
it('Add 1 action to funnel and navigate to persons', () => {
cy.get('[data-attr=add-action-event-button]').click()
cy.get('[data-attr=trend-element-subject-0]').click()
cy.wait(200)
cy.contains('HogFlix homepage view').click()
cy.get('[data-attr=save-funnel-button]').click()
cy.get('[data-attr=funnel-viz]').should('exist')
cy.get('[data-attr="funnel-person"] a')
.filter(':contains("@")')
.first()
.then(($match) => {
const email = $match.text()
cy.wrap($match).click()
cy.url().should('include', '/person/')
cy.contains(email).should('exist')
})
})
it('Apply date filter to funnel', () => {
cy.get('[data-attr=add-action-event-button]').click()
cy.get('[data-attr=trend-element-subject-0]').click()
cy.contains('HogFlix homepage view').click()
cy.get('[data-attr=save-funnel-button]').click()
cy.get('[data-attr=date-filter]').click()
cy.contains('Last 30 days').click()
cy.get('[data-attr=date-filter]').click()
cy.contains('Last 30 days').click()
cy.get('[data-attr=funnel-viz]').should('exist')
})
it('Add 2 actions to funnel', () => {
cy.get('[data-attr=add-action-event-button]').click()
cy.get('[data-attr=trend-element-subject-0]').click()
cy.contains('HogFlix homepage view').click()
cy.get('[data-attr=add-action-event-button]').click()
cy.get('[data-attr=trend-element-subject-1]').click()
cy.contains('HogFlix paid').click()
cy.get('[data-attr=save-funnel-button]').click()
cy.get('[data-attr=funnel-viz]').should('exist')
})
})