overleaf/services/web/test/frontend/features/layout/components/switch-to-pdf-button.spec.tsx
Alf Eaton b2fbc39930 Improve tests for layout components (#17518)
GitOrigin-RevId: 1d08224a5282482dcf153a2ebcff69a08be2eb58
2024-03-26 09:04:24 +00:00

42 lines
1.2 KiB
TypeScript

import SwitchToPDFButton from '@/features/source-editor/components/switch-to-pdf-button'
import { EditorProviders } from '../../../helpers/editor-providers'
describe('<SwitchToPDFButton />', function () {
it('shows button in full screen editor layout', function () {
cy.mount(
<EditorProviders
ui={{ view: 'editor', pdfLayout: 'flat', chatOpen: false }}
>
<SwitchToPDFButton />
</EditorProviders>
)
cy.findByRole('button', { name: 'Switch to PDF' })
})
it('does not show button in split screen layout', function () {
cy.mount(
<EditorProviders
ui={{ view: 'editor', pdfLayout: 'sideBySide', chatOpen: false }}
>
<SwitchToPDFButton />
</EditorProviders>
)
cy.findByRole('button', { name: 'Switch to PDF' }).should('not.exist')
})
it('does not show button when detached', function () {
window.metaAttributesCache.set('ol-detachRole', 'detacher')
cy.mount(
<EditorProviders
ui={{ view: 'editor', pdfLayout: 'flat', chatOpen: false }}
>
<SwitchToPDFButton />
</EditorProviders>
)
cy.findByRole('button', { name: 'Switch to PDF' }).should('not.exist')
})
})