import {getMinimalMe} from '../../../support/helpers'; import minimalModule from '../../../fixtures/module.minimal'; const {me: minimalMe} = getMinimalMe({}); describe('Instruments on Module page', () => { beforeEach(() => { console.log('setting up'); cy.setup(); cy.mockGraphqlOps({ operations: { UpdateLastModule: { updateLastModule: { success: true, }, }, MeQuery: { me: minimalMe, }, ModuleDetailsQuery: { module: { ...minimalModule, slug: 'module-with-instrument', chapters: [ { title: 'Some Chapter', contentBlocks: [ { 'type': 'base_communication', 'title': 'Das Interview', 'contents': [ { 'type': 'basic_knowledge', 'value': { 'description': '

Ein Interview dient dazu, durch Befragung Informationen zu ermitteln. Bei journalistischen Interviews werden oft Expertinnen und Experten befragt, aber auch Personen.

', }, }, ], }, { 'type': 'normal', 'title': 'Normaler Block', 'contents': [ { type: 'text_block', value: { text: 'Some text, not an instrument' } } ] } ], }, ], }, }, }, }); }); it('shows the correct instrument label', () => { cy.visit('module/module-with-instrument'); cy.getByDataCy('content-block').first().within(() => { cy.getByDataCy('instrument-label').should('contain', 'Instrumente - Sprache & Kommunikation'); }); cy.getByDataCy('content-block').eq(1).within(() => { cy.getByDataCy('instrument-label').should('not.exist'); }); // also check that other content blocks don't have the label }); });