comments.spec.ts 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. import { test, expect } from '@playwright/test';
  2. test.describe('Comment', () => {
  3. // make tests run in serial
  4. test.describe.configure({ mode: 'serial' });
  5. test('Create comment page', async({ page }) => {
  6. await page.goto('/comment');
  7. await page.getByTestId('editor-button').click();
  8. await page.getByTestId('save-page-btn').click();
  9. await expect(page.locator('.page-meta')).toBeVisible();
  10. });
  11. test('Successfully add comments', async({ page }) => {
  12. const commentText = 'add comment';
  13. await page.goto('/comment');
  14. // Add comment
  15. await page.getByTestId('page-comment-button').click();
  16. await page.getByTestId('open-comment-editor-button').click();
  17. await page.locator('.cm-content').fill(commentText);
  18. await page.getByTestId('comment-submit-button').first().click();
  19. await expect(page.locator('.page-comment-body')).toHaveText(commentText);
  20. await expect(page.getByTestId('page-comment-button').locator('.grw-count-badge')).toHaveText('1');
  21. });
  22. test('Successfully reply comments', async({ page }) => {
  23. const commentText = 'reply comment';
  24. await page.goto('/comment');
  25. // Reply comment
  26. await page.getByTestId('comment-reply-button').click();
  27. await page.locator('.cm-content').fill(commentText);
  28. await page.getByTestId('comment-submit-button').first().click();
  29. await expect(page.locator('.page-comment-body').nth(1)).toHaveText(commentText);
  30. await expect(page.getByTestId('page-comment-button').locator('.grw-count-badge')).toHaveText('2');
  31. });
  32. // test('Successfully delete comments', async({ page }) => {
  33. // await page.goto('/comment');
  34. // await page.getByTestId('page-comment-button').click();
  35. // await page.getByTestId('comment-delete-button').first().click({ force: true });
  36. // await expect(page.getByTestId('page-comment-delete-modal')).toBeVisible();
  37. // await page.getByTestId('delete-comment-button').click();
  38. // await expect(page.getByTestId('page-comment-button').locator('.grw-count-badge')).toHaveText('0');
  39. // });
  40. // TODO: https://redmine.weseek.co.jp/issues/139520
  41. });