This commit is contained in:
@@ -0,0 +1,61 @@
|
||||
import { expect, test } from '@playwright/test';
|
||||
import axios from 'axios';
|
||||
|
||||
import { openFeedbackPage } from '../utils/navigation';
|
||||
|
||||
const NUMBER_OF_FEEDBACKS = 25;
|
||||
|
||||
export default () => {
|
||||
test.describe('create-multiple-feedbacks suite', () => {
|
||||
test.afterEach(async ({ page }) => {
|
||||
await page.getByRole('checkbox').nth(1).click();
|
||||
|
||||
await page.getByText('Delete Feedback').click();
|
||||
await page.waitForTimeout(1000);
|
||||
|
||||
await page.getByRole('button', { name: 'Delete' }).click();
|
||||
await page.waitForTimeout(1000);
|
||||
|
||||
await page.getByRole('checkbox').first().click();
|
||||
|
||||
await page.getByText('Delete Feedback').click();
|
||||
await page.waitForTimeout(1000);
|
||||
|
||||
await page.getByRole('button', { name: 'Delete' }).click();
|
||||
await page.waitForTimeout(1000);
|
||||
});
|
||||
|
||||
test('creating multiple feedbacks succeeds', async ({ page }) => {
|
||||
const { projectId, channelId } = await openFeedbackPage(page);
|
||||
|
||||
await expect(page.getByText('There is no data yet')).toBeVisible();
|
||||
|
||||
for (let i = 0; i < NUMBER_OF_FEEDBACKS; i++) {
|
||||
await axios.post(
|
||||
`http://localhost:4000/api/projects/${projectId}/channels/${channelId}/feedbacks`,
|
||||
{
|
||||
message: `test text ${i}`,
|
||||
},
|
||||
{ headers: { 'x-api-key': 'MASTER_API_KEY' } },
|
||||
);
|
||||
}
|
||||
|
||||
await page.goto(
|
||||
`http://localhost:3000/main/project/${projectId}/feedback?channelId=${channelId}`,
|
||||
{ waitUntil: 'domcontentloaded' },
|
||||
);
|
||||
|
||||
await page.waitForTimeout(1000);
|
||||
|
||||
await expect(page.locator('tbody')).toContainText('test text');
|
||||
|
||||
await expect(page.getByText('Page 1 of 2')).toBeVisible();
|
||||
|
||||
await page.getByRole('button', { name: '20', exact: true }).click();
|
||||
await page.waitForTimeout(1000);
|
||||
|
||||
await page.getByRole('menuitem', { name: '30', exact: true }).click();
|
||||
await page.waitForTimeout(1000);
|
||||
});
|
||||
});
|
||||
};
|
||||
Reference in New Issue
Block a user