0
0
mirror of https://github.com/PostHog/posthog.git synced 2024-12-01 04:12:23 +01:00
posthog/cypress/e2e/insights-navigation-open-directly.cy.ts
2024-07-09 09:59:53 +00:00

63 lines
2.1 KiB
TypeScript

import { urls } from 'scenes/urls'
import { insight } from '../productAnalytics'
const hogQLQuery = `select event,
count()
from events
group by event,
properties.$browser,
person.properties.email
order by count() desc
limit 2`
// For tests related to trends please check trendsElements.js
describe('Insights', () => {
beforeEach(() => {
cy.visit(urls.insightNew())
})
describe('navigation', () => {
describe('opening a new insight directly', () => {
it('can open a new trends insight', () => {
insight.newInsight('TRENDS')
cy.get('.TrendsInsight canvas').should('exist')
cy.get('tr').should('have.length.gte', 2)
})
it('can open a new funnels insight', () => {
insight.newInsight('FUNNELS')
cy.get('.funnels-empty-state__title').should('exist')
})
it.skip('can open a new retention insight', () => {
insight.newInsight('RETENTION')
cy.get('.RetentionContainer canvas').should('exist')
cy.get('.RetentionTable__Tab').should('have.length', 66)
})
it('can open a new paths insight', () => {
insight.newInsight('PATHS')
cy.get('.Paths g').should('have.length.gte', 5) // not a fixed value unfortunately
})
it('can open a new stickiness insight', () => {
insight.newInsight('STICKINESS')
cy.get('.TrendsInsight canvas').should('exist')
})
it('can open a new lifecycle insight', () => {
insight.newInsight('LIFECYCLE')
cy.get('.TrendsInsight canvas').should('exist')
})
it('can open a new SQL insight', () => {
insight.newInsight('SQL')
insight.updateQueryEditorText(hogQLQuery, 'hogql-query-editor')
cy.get('[data-attr="hogql-query-editor"]').should('exist')
cy.get('tr.DataTable__row').should('have.length.gte', 2)
})
})
})
})