test element file routing

This commit is contained in:
Yisroel Baum 2026-06-14 23:05:45 +03:00
parent 14d2ce2284
commit 0d5783ba9c
Signed by: yisroelbaum
GPG key ID: 0FA60884F75520A9
14 changed files with 951 additions and 388 deletions

View file

@ -126,28 +126,45 @@ describe('admin element editing', () => {
.and('have.attr', 'src')
.and('include', '/storage/element-icons/')
cy.get('[data-cy="admin-element-pdf-input"]').selectFile(
cy.get('[data-cy="admin-element-short-pdf-input"]').selectFile(
'public/assets/pdfs/baderech.pdf',
{ force: true },
)
cy.wait('@updateElement')
cy.get('[data-cy="admin-element-pdf-status"]')
cy.get('[data-cy="admin-element-short-pdf-status"]')
.should('be.visible')
.and('contain.text', 'PDF updated')
cy.get('[data-cy="admin-element-current-pdf"]')
.and('contain.text', 'Short PDF updated')
cy.get('[data-cy="admin-element-current-short-pdf"]')
.should('be.visible')
.and('have.attr', 'href')
.and('include', '/storage/element-pdfs/')
.and('include', '/storage/element-pdfs/short/')
cy.get('[data-cy="admin-element-long-pdf-input"]').selectFile(
'public/assets/pdfs/baderech.pdf',
{ force: true },
)
cy.wait('@updateElement')
cy.get('[data-cy="admin-element-long-pdf-status"]')
.should('be.visible')
.and('contain.text', 'Long PDF updated')
cy.get('[data-cy="admin-element-current-long-pdf"]')
.should('be.visible')
.and('have.attr', 'href')
.and('include', '/storage/element-pdfs/long/')
cy.contains('header.site-header a', 'View Element').click()
cy.get('[data-cy="element-icon"]')
.should('be.visible')
.and('have.attr', 'src')
.and('include', '/storage/element-icons/')
cy.get('[data-cy="element-pdf-link"]')
cy.get('[data-cy="element-short-pdf-link"]')
.should('be.visible')
.and('have.attr', 'href')
.and('include', '/storage/element-pdfs/')
.and('include', '/storage/element-pdfs/short/')
cy.get('[data-cy="element-long-pdf-link"]')
.should('be.visible')
.and('have.attr', 'href')
.and('include', '/storage/element-pdfs/long/')
cy.resetDb()
})
@ -163,7 +180,12 @@ describe('admin element editing', () => {
{ force: true },
)
cy.wait('@updateElement')
cy.get('[data-cy="admin-element-pdf-input"]').selectFile(
cy.get('[data-cy="admin-element-short-pdf-input"]').selectFile(
'public/assets/pdfs/baderech.pdf',
{ force: true },
)
cy.wait('@updateElement')
cy.get('[data-cy="admin-element-long-pdf-input"]').selectFile(
'public/assets/pdfs/baderech.pdf',
{ force: true },
)
@ -177,17 +199,26 @@ describe('admin element editing', () => {
cy.get('[data-cy="admin-element-current-icon"]').should('not.exist')
cy.contains('No icon image').should('be.visible')
cy.contains('button', 'Remove PDF').click()
cy.contains('button', 'Remove short PDF').click()
cy.wait('@updateElement')
cy.get('[data-cy="admin-element-pdf-status"]')
cy.get('[data-cy="admin-element-short-pdf-status"]')
.should('be.visible')
.and('contain.text', 'PDF removed')
cy.get('[data-cy="admin-element-current-pdf"]').should('not.exist')
cy.contains('No PDF').should('be.visible')
.and('contain.text', 'Short PDF removed')
cy.get('[data-cy="admin-element-current-short-pdf"]').should('not.exist')
cy.contains('No short PDF').should('be.visible')
cy.contains('button', 'Remove long PDF').click()
cy.wait('@updateElement')
cy.get('[data-cy="admin-element-long-pdf-status"]')
.should('be.visible')
.and('contain.text', 'Long PDF removed')
cy.get('[data-cy="admin-element-current-long-pdf"]').should('not.exist')
cy.contains('No long PDF').should('be.visible')
cy.contains('header.site-header a', 'View Element').click()
cy.get('[data-cy="element-icon"]').should('not.exist')
cy.get('[data-cy="element-pdf-link"]').should('not.exist')
cy.get('[data-cy="element-short-pdf-link"]').should('not.exist')
cy.get('[data-cy="element-long-pdf-link"]').should('not.exist')
cy.resetDb()
})

View file

@ -51,7 +51,8 @@ describe('media page sets', () => {
cy.get('[data-cy="element-rich-text"]').should('not.exist')
cy.get('[data-cy="element-youtube-embed"]')
.should('not.exist')
cy.get('[data-cy="element-pdf-link"]').should('not.exist')
cy.get('[data-cy="element-short-pdf-link"]').should('not.exist')
cy.get('[data-cy="element-long-pdf-link"]').should('not.exist')
cy.get('[data-cy="child-element-list"]').should('be.visible')
cy.get('[data-cy="child-element-list"]')
.should(
@ -116,13 +117,14 @@ describe('media page sets', () => {
)
.should('have.css', 'text-align', 'center')
cy.get('[data-cy="element-youtube-embed"]').should('not.exist')
cy.contains('[data-cy="element-pdf-link"]', 'View PDF')
.as('pdfLink')
cy.contains('[data-cy="element-short-pdf-link"]', 'View Short PDF')
.as('shortPdfLink')
.should('be.visible')
.and('have.attr', 'target', '_blank')
cy.get('@pdfLink')
cy.get('@shortPdfLink')
.and('have.attr', 'href')
.and('include', '/storage/element-pdfs/baderech.pdf')
.and('include', '/storage/element-pdfs/short/baderech.pdf')
cy.get('[data-cy="element-long-pdf-link"]').should('not.exist')
cy.contains('[data-cy="child-element-link"]', introductionAudioTitle)
.as('introductionAudioLink')
.should('have.attr', 'href', '/element/8')
@ -132,7 +134,8 @@ describe('media page sets', () => {
cy.contains('h1', introductionAudioTitle).should('be.visible')
cy.get('[data-cy="element-icon"]').should('not.exist')
cy.get('[data-cy="element-rich-text"]').should('not.exist')
cy.get('[data-cy="element-pdf-link"]').should('not.exist')
cy.get('[data-cy="element-short-pdf-link"]').should('not.exist')
cy.get('[data-cy="element-long-pdf-link"]').should('not.exist')
cy.get('[data-cy="child-element-list"]').should('not.exist')
cy.get('[data-cy="element-youtube-embed"]')
.should('be.visible')