55 lines
1.4 KiB
JavaScript
55 lines
1.4 KiB
JavaScript
import { getMinimalMe } from '../../../support/helpers';
|
|
|
|
const getOperations = ({ readOnly, classReadOnly = false }) => ({
|
|
MeQuery: getMinimalMe({ readOnly, classReadOnly }),
|
|
NewsTeasers: {
|
|
newsTeasers: {
|
|
edges: [],
|
|
},
|
|
},
|
|
});
|
|
|
|
describe('Read Only Banner', () => {
|
|
beforeEach(() => {
|
|
cy.setup();
|
|
});
|
|
|
|
it('is not shown', () => {
|
|
cy.mockGraphqlOps({
|
|
operations: getOperations({ readOnly: false }),
|
|
});
|
|
|
|
cy.visit('/');
|
|
|
|
cy.getByDataCy('start-page-heading').should('exist');
|
|
cy.getByDataCy('read-only-banner').should('not.exist');
|
|
});
|
|
|
|
it('is shown for expired license', () => {
|
|
cy.mockGraphqlOps({
|
|
operations: getOperations({ readOnly: true }),
|
|
});
|
|
|
|
cy.visit('/');
|
|
|
|
cy.getByDataCy('start-page-heading').should('exist');
|
|
|
|
cy.getByDataCy('read-only-banner').should('exist').should('contain', 'Lizenz');
|
|
cy.getByDataCy('license-activation-link').should('exist').should('contain', 'Neuen Lizenzcode eingeben').click();
|
|
cy.url().should('contain', 'license-activation');
|
|
});
|
|
|
|
it('is shown for inactive school class', () => {
|
|
cy.mockGraphqlOps({
|
|
operations: getOperations({ readOnly: false, classReadOnly: true }),
|
|
});
|
|
|
|
cy.visit('/');
|
|
|
|
cy.getByDataCy('start-page-heading').should('exist');
|
|
|
|
cy.getByDataCy('read-only-banner').should('exist').should('contain', 'Klasse');
|
|
cy.getByDataCy('license-activation-link').should('not.exist');
|
|
});
|
|
});
|