0
0
Fork 0
mirror of https://github.com/nextcloud/server.git synced 2025-02-23 16:38:37 +00:00
nextcloud_server/cypress/e2e/dashboard/widget-performance.cy.ts
Ferdinand Thiessen d0dbe21f4c
test(dashboard): Add regression test for loading unneeded data
Prevent a regression of https://github.com/nextcloud/server/issues/48403

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-01-16 11:40:02 +01:00

37 lines
998 B
TypeScript

/*!
* SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
*/
/**
* Regression test of https://github.com/nextcloud/server/issues/48403
* Ensure that only visible widget data is loaded
*/
describe('dashboard: performance', () => {
before(() => {
cy.createRandomUser().then((user) => {
cy.login(user)
})
})
it('Only load needed widgets', () => {
cy.intercept('**/dashboard/api/v2/widget-items?widgets%5B%5D=user_status').as('loadedWidgets')
const now = new Date(2025, 0, 14, 15)
cy.clock(now)
// The dashboard is loaded
cy.visit('/apps/dashboard')
cy.get('#app-dashboard')
.should('be.visible')
.contains('Good afternoon')
.should('be.visible')
// Wait and check no requests are made
// eslint-disable-next-line cypress/no-unnecessary-waiting
cy.wait(4000, { timeout: 8000 })
cy.get('@loadedWidgets.all').then((interceptions) => {
expect(interceptions).to.have.length(0)
})
})
})