Merge pull request #10975 from overleaf/mf-settings-editor-new-tests

Add new tests for editor left menu (compiler & dictionary menu)

GitOrigin-RevId: 1b21fcc51a85901bce4f7b50e557146881df4c3d
This commit is contained in:
Mathias Jakobsen 2023-01-04 11:14:13 +00:00 committed by Copybot
parent d994ae713e
commit da1d4aba6d
2 changed files with 53 additions and 0 deletions

View file

@ -0,0 +1,29 @@
import { screen, within } from '@testing-library/dom'
import { expect } from 'chai'
import fetchMock from 'fetch-mock'
import SettingsCompiler from '../../../../../../frontend/js/features/editor-left-menu/components/settings/settings-compiler'
import { renderWithEditorContext } from '../../../../helpers/render-with-context'
describe('<SettingsCompiler />', function () {
afterEach(function () {
fetchMock.reset()
})
it('shows correct menu', async function () {
renderWithEditorContext(<SettingsCompiler />)
const select = screen.getByLabelText('Compiler')
const optionPdfLaTeX = within(select).getByText('pdfLaTeX')
expect(optionPdfLaTeX.getAttribute('value')).to.equal('pdflatex')
const optionLaTeX = within(select).getByText('LaTeX')
expect(optionLaTeX.getAttribute('value')).to.equal('latex')
const optionXeLaTeX = within(select).getByText('XeLaTeX')
expect(optionXeLaTeX.getAttribute('value')).to.equal('xelatex')
const optionLuaLaTeX = within(select).getByText('LuaLaTeX')
expect(optionLuaLaTeX.getAttribute('value')).to.equal('lualatex')
})
})

View file

@ -0,0 +1,24 @@
import { fireEvent, screen, within } from '@testing-library/dom'
import { expect } from 'chai'
import SettingsDictionary from '../../../../../../frontend/js/features/editor-left-menu/components/settings/settings-dictionary'
import { renderWithEditorContext } from '../../../../helpers/render-with-context'
describe('<SettingsDictionary />', function () {
it('open dictionary modal', function () {
renderWithEditorContext(<SettingsDictionary />)
screen.getByText('Dictionary')
const button = screen.getByRole('button', { name: 'Edit' })
fireEvent.click(button)
const modal = screen.getAllByRole('dialog')[0]
within(modal).getByRole('heading', { name: 'Edit Dictionary' })
within(modal).getByText('Your custom dictionary is empty.')
const doneButton = within(modal).getByRole('button', { name: 'Done' })
fireEvent.click(doneButton)
expect(screen.queryByRole('dialog')).to.be.null
})
})