diff --git a/cypress/integration/extra-panel.spec.ts b/cypress/integration/extra-panel.spec.ts new file mode 100644 index 00000000..8cefbd9e --- /dev/null +++ b/cypress/integration/extra-panel.spec.ts @@ -0,0 +1,52 @@ +context('Extra Information Panel', () => { + beforeEach(() => cy.$login()) + + it('displays the lyrics as the default panel', () => { + cy.$shuffleSeveralSongs() + cy.get('#extraPanelLyrics').should('be.visible').and('contain.text', 'Sample song lyrics') + }) + + it('displays an option to add lyrics if blank', () => { + cy.fixture('info.get.200.json').then(data => { + data.lyrics = null + + cy.intercept('GET', '/api/**/info', { + statusCode: 200, + body: data + }) + }) + + cy.$shuffleSeveralSongs() + cy.get('#extraPanelLyrics').should('be.visible').and('contain.text', 'No lyrics found.') + cy.get('#extraPanelLyrics [data-test=add-lyrics-btn]').click() + cy.findByTestId('edit-song-form').should('be.visible').within(() => { + cy.get('[name=lyrics]').should('have.focus') + }) + }) + + it('displays the band information', () => { + cy.$shuffleSeveralSongs() + cy.get('#extraTabArtist').click() + cy.get('#extraPanelArtist').should('be.visible').within(() => { + cy.get('[data-test=artist-info]').should('be.visible') + cy.findByText('Artist summary').should('be.visible') + cy.get('[data-test=more-btn]').click() + cy.findByText('Artist summary').should('not.exist') + cy.findByText('Artist full bio').should('be.visible') + }) + }) + + it('displays the album information', () => { + cy.$shuffleSeveralSongs() + cy.get('#extraTabAlbum').click() + cy.get('#extraPanelAlbum').should('be.visible').within(() => { + cy.get('[data-test=album-info]').should('be.visible') + cy.findByText('Album summary').should('be.visible') + cy.get('[data-test=more-btn]').click() + cy.findByText('Album summary').should('not.exist') + cy.findByText('Album full wiki').should('be.visible') + }) + }) + + // YouTube spec has been handled by youtube.spec.ts +}) diff --git a/resources/assets b/resources/assets index c60db8c8..e7f951dc 160000 --- a/resources/assets +++ b/resources/assets @@ -1 +1 @@ -Subproject commit c60db8c8fcb891329172221ba57cea93a97e7bf4 +Subproject commit e7f951dcd3994551d691560455df2bfd08e9f74d