editor.test.js 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. describe('Editor', () => {
  2. const globalEditorExcludes =
  3. '.skiplink, .sidebar__collapse-toggle, #wagtail-sidebar, li[aria-controls^="tab-"]';
  4. beforeAll(async () => {
  5. await page.goto(`${TEST_ORIGIN}/admin/pages/add/demosite/standardpage/2/`);
  6. });
  7. it('has the right heading', async () => {
  8. const pageHeader = await page.$('h1');
  9. const pageHeaderValue = await pageHeader.evaluate((el) => el.textContent);
  10. expect(pageHeaderValue).toContain('New: Standard page');
  11. });
  12. it('axe', async () => {
  13. await expect(page).toPassAxeTests({
  14. exclude: `${globalEditorExcludes}, [aria-describedby^="placeholder-"]`,
  15. });
  16. });
  17. it('axe InlinePanel', async () => {
  18. const toggle = await page.$('.sidebar__collapse-toggle');
  19. toggle.click();
  20. const trigger = await page.$('#id_carousel_items-ADD');
  21. trigger.click();
  22. await expect(page).toPassAxeTests({
  23. exclude: `${globalEditorExcludes}, [aria-describedby^="placeholder-"]`,
  24. });
  25. });
  26. it('axe embed chooser', async () => {
  27. const trigger = await page.$('.Draftail-Editor [name="EMBED"]');
  28. await Promise.all([
  29. trigger.click(),
  30. page.waitForSelector('.embed-form', { visible: true }),
  31. ]);
  32. await expect(page).toPassAxeTests({
  33. exclude: `${globalEditorExcludes}, [aria-describedby^="placeholder-"], .modal`,
  34. });
  35. await Promise.all([
  36. await page.keyboard.press('Escape'),
  37. page.waitForSelector('.Draftail-Editor--readonly', { hidden: true }),
  38. ]);
  39. });
  40. it.skip('axe image chooser', async () => {
  41. const trigger = await page.$('.Draftail-Editor [name="IMAGE"]');
  42. await Promise.all([
  43. trigger.click(),
  44. page.waitForSelector('.image-search', { visible: true }),
  45. ]);
  46. await expect(page).toPassAxeTests({
  47. exclude: `${globalEditorExcludes}, [aria-describedby^="placeholder-"], .modal`,
  48. });
  49. await Promise.all([
  50. await page.keyboard.press('Escape'),
  51. page.waitForSelector('.Draftail-Editor--readonly', { hidden: true }),
  52. ]);
  53. });
  54. it.skip('axe page chooser', async () => {
  55. const trigger = await page.$('.Draftail-Editor [name="LINK"]');
  56. await Promise.all([
  57. trigger.click(),
  58. page.waitForSelector('.page-results', { visible: true }),
  59. ]);
  60. await expect(page).toPassAxeTests({
  61. exclude: `${globalEditorExcludes}, [aria-describedby^="placeholder-"], .modal`,
  62. });
  63. await Promise.all([
  64. await page.keyboard.press('Escape'),
  65. page.waitForSelector('.Draftail-Editor--readonly', { hidden: true }),
  66. ]);
  67. });
  68. });