0
0
mirror of https://github.com/PostHog/posthog.git synced 2024-11-28 09:16:49 +01:00
posthog/cypress/e2e/exports.js
Paul D'Ambra d613f4bd06
chore: upgrade cypress to v10x (#9650)
* update cypress

* really click something that's actually there

* obey cypress and use done

* run cypress 9 in CI

* no need for before each when only one test

* no need to set window size to the default

* get tests passing file by file

* delay checking for a graph in a test

* be more specific cypress

* use cy command

* select text like a human

* silly cypress

* try and avoid cypress deciding that a visible field is not valid

* select delete button correctly

* find save button differently

* try and avoid not always typing the first character

* better trends selections

* use cy command to navigate

* conitnue trying to get tests to pass in CI

* another try at setting feature flag names in CI

* can CI find undo button without a wait?

* better assertion for cypress

* up to v10

* fix splitting specs with v10 path

* show cypress how to wait for the test to finish

* remove redundant file

* change return to satisfy new cypress

* move import
2022-06-09 11:14:21 +01:00

43 lines
1.6 KiB
JavaScript

import { urls } from 'scenes/urls'
import { decideResponse } from '../fixtures/api/decide'
// NOTE: As the API data is randomly generated, we are only really testing here that the overall output is correct
// The actual graph is not under test
describe('Exporting Insights', () => {
beforeEach(() => {
cy.intercept('https://app.posthog.com/decide/*', (req) =>
req.reply(
decideResponse({
'export-dashboard-insights': true,
})
)
)
cy.visit(urls.insightNew())
// apply filter
cy.get('[data-attr=trends-filters-add-filter-group]').click()
cy.get('[data-attr=property-select-toggle-0]').click()
cy.get('[data-attr=taxonomic-filter-searchfield]').click()
cy.get('[data-attr=expand-list-event_properties]').click()
cy.get('[data-attr=prop-filter-event_properties-1]').click({ force: true })
cy.get('[data-attr=prop-val] input').type('not-applicable')
cy.get('[data-attr=prop-val] input').type('{enter}')
// Save
cy.get('[data-attr="insight-save-button"]').click()
})
it('Export an Insight to png', () => {
cy.get('[data-attr=more-button]').click()
cy.get('[data-attr=export-button]').click()
cy.get('[data-attr=export-button-png]').click()
const expecteFileName = 'export-pageview-count.png'
cy.task('compareToReferenceImage', {
source: expecteFileName,
reference: `../data/exports/${expecteFileName}`,
diffThreshold: 0.01,
})
})
})