comments.spec.ts 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. import { test, expect } from '@playwright/test';
  2. test('Successfully add comments', async({ page }) => {
  3. const commentText = 'add comment';
  4. await page.goto('/Sandbox');
  5. // Add comment
  6. await page.getByTestId('page-comment-button').click();
  7. await page.getByTestId('open-comment-editor-button').click();
  8. await page.locator('.cm-content').fill(commentText);
  9. await page.getByTestId('comment-submit-button').first().click();
  10. await expect(page.locator('.page-comment-body')).toHaveText(commentText);
  11. await expect(page.getByTestId('page-comment-button').locator('.grw-count-badge')).toHaveText('1');
  12. });
  13. test('Successfully reply comments', async({ page }) => {
  14. const commentText = 'reply comment';
  15. await page.goto('/Sandbox');
  16. // Reply comment
  17. await page.getByTestId('page-comment-button').click();
  18. await page.getByTestId('comment-reply-button').click();
  19. await page.locator('.cm-content').fill(commentText);
  20. await page.getByTestId('comment-submit-button').first().click();
  21. await expect(page.locator('.page-comment-body').nth(1)).toHaveText(commentText);
  22. await expect(page.getByTestId('page-comment-button').locator('.grw-count-badge')).toHaveText('2');
  23. });
  24. test('Successfully delete comments', async({ page }) => {
  25. await page.goto('/Sandbox');
  26. await page.getByTestId('page-comment-button').click();
  27. await page.getByTestId('comment-delete-button').first().click({ force: true });
  28. await expect(page.getByTestId('page-comment-delete-modal')).toBeVisible();
  29. await page.getByTestId('delete-comment-button').click();
  30. await expect(page.getByTestId('page-comment-button').locator('.grw-count-badge')).toHaveText('0');
  31. });
  32. // TODO: https://redmine.weseek.co.jp/issues/139520