|
|
@@ -1,6 +1,6 @@
|
|
|
-import { test, expect } from '@playwright/test';
|
|
|
+import { expect, test } from '@playwright/test';
|
|
|
|
|
|
-test('Search page with "q" param is successfully loaded', async({ page }) => {
|
|
|
+test('Search page with "q" param is successfully loaded', async ({ page }) => {
|
|
|
// Navigate to the search page with query parameters
|
|
|
await page.goto('/_search?q=alerts');
|
|
|
|
|
|
@@ -11,7 +11,7 @@ test('Search page with "q" param is successfully loaded', async({ page }) => {
|
|
|
await expect(page.locator('.wiki')).toBeVisible();
|
|
|
});
|
|
|
|
|
|
-test('checkboxes behaviors', async({ page }) => {
|
|
|
+test('checkboxes behaviors', async ({ page }) => {
|
|
|
// Navigate to the search page with query parameters
|
|
|
await page.goto('/_search?q=alerts');
|
|
|
|
|
|
@@ -28,7 +28,10 @@ test('checkboxes behaviors', async({ page }) => {
|
|
|
await page.getByTestId('cb-select').first().click({ force: true });
|
|
|
|
|
|
// Click the select all checkbox
|
|
|
- await page.getByTestId('delete-control-button').first().click({ force: true });
|
|
|
+ await page
|
|
|
+ .getByTestId('delete-control-button')
|
|
|
+ .first()
|
|
|
+ .click({ force: true });
|
|
|
await page.getByTestId('cb-select-all').click({ force: true });
|
|
|
|
|
|
// Unclick the first checkbox after selecting all
|
|
|
@@ -41,16 +44,19 @@ test('checkboxes behaviors', async({ page }) => {
|
|
|
await page.getByTestId('cb-select').first().click({ force: true });
|
|
|
});
|
|
|
|
|
|
-
|
|
|
-test('successfully loads /_private-legacy-pages', async({ page }) => {
|
|
|
+test('successfully loads /_private-legacy-pages', async ({ page }) => {
|
|
|
await page.goto('/_private-legacy-pages');
|
|
|
|
|
|
// Confirm search result elements are visible
|
|
|
- await expect(page.locator('[data-testid="search-result-base"]')).toBeVisible();
|
|
|
- await expect(page.locator('[data-testid="search-result-private-legacy-pages"]')).toBeVisible();
|
|
|
+ await expect(
|
|
|
+ page.locator('[data-testid="search-result-base"]'),
|
|
|
+ ).toBeVisible();
|
|
|
+ await expect(
|
|
|
+ page.locator('[data-testid="search-result-private-legacy-pages"]'),
|
|
|
+ ).toBeVisible();
|
|
|
});
|
|
|
|
|
|
-test('Search all pages by word', async({ page }) => {
|
|
|
+test('Search all pages by word', async ({ page }) => {
|
|
|
await page.goto('/');
|
|
|
await page.getByTestId('open-search-modal-button').click();
|
|
|
await expect(page.getByTestId('search-modal')).toBeVisible();
|
|
|
@@ -58,51 +64,51 @@ test('Search all pages by word', async({ page }) => {
|
|
|
await expect(page.locator('.search-menu-item').first()).toBeVisible();
|
|
|
});
|
|
|
|
|
|
-test.describe.serial('Search all pages', () => {
|
|
|
- const tag = 'help';
|
|
|
- const searchText = `tag:${tag}`;
|
|
|
-
|
|
|
- test('Successfully created tags', async({ page }) => {
|
|
|
- await page.goto('/');
|
|
|
-
|
|
|
- // open Edit Tags Modal to add tag
|
|
|
- await page.locator('.grw-side-contents-sticky-container').isVisible();
|
|
|
- await page.locator('#edit-tags-btn-wrapper-for-tooltip').click();
|
|
|
- await expect(page.locator('#edit-tag-modal')).toBeVisible();
|
|
|
- await page.locator('.rbt-input-main').fill(tag);
|
|
|
- await page.locator('#tag-typeahead-asynctypeahead-item-0').click();
|
|
|
- await page.getByTestId('tag-edit-done-btn').click();
|
|
|
-
|
|
|
- });
|
|
|
-
|
|
|
- test('Search all pages by tag is successfully loaded', async({ page }) => {
|
|
|
- await page.goto('/');
|
|
|
-
|
|
|
- // Search
|
|
|
- await page.getByTestId('open-search-modal-button').click();
|
|
|
- await expect(page.getByTestId('search-modal')).toBeVisible();
|
|
|
- await page.locator('.form-control').fill(searchText);
|
|
|
- await page.getByTestId('search-all-menu-item').click();
|
|
|
-
|
|
|
- // Confirm search result elements are visible
|
|
|
- const searchResultList = page.getByTestId('search-result-list');
|
|
|
- await expect(searchResultList).toBeVisible();
|
|
|
- await expect(searchResultList.locator('li')).toHaveCount(1);
|
|
|
+test.describe
|
|
|
+ .serial('Search all pages', () => {
|
|
|
+ const tag = 'help';
|
|
|
+ const searchText = `tag:${tag}`;
|
|
|
+
|
|
|
+ test('Successfully created tags', async ({ page }) => {
|
|
|
+ await page.goto('/');
|
|
|
+
|
|
|
+ // open Edit Tags Modal to add tag
|
|
|
+ await page.locator('.grw-side-contents-sticky-container').isVisible();
|
|
|
+ await page.locator('#edit-tags-btn-wrapper-for-tooltip').click();
|
|
|
+ await expect(page.locator('#edit-tag-modal')).toBeVisible();
|
|
|
+ await page.locator('.rbt-input-main').fill(tag);
|
|
|
+ await page.locator('#tag-typeahead-asynctypeahead-item-0').click();
|
|
|
+ await page.getByTestId('tag-edit-done-btn').click();
|
|
|
+ });
|
|
|
+
|
|
|
+ test('Search all pages by tag is successfully loaded', async ({ page }) => {
|
|
|
+ await page.goto('/');
|
|
|
+
|
|
|
+ // Search
|
|
|
+ await page.getByTestId('open-search-modal-button').click();
|
|
|
+ await expect(page.getByTestId('search-modal')).toBeVisible();
|
|
|
+ await page.locator('.form-control').fill(searchText);
|
|
|
+ await page.getByTestId('search-all-menu-item').click();
|
|
|
+
|
|
|
+ // Confirm search result elements are visible
|
|
|
+ const searchResultList = page.getByTestId('search-result-list');
|
|
|
+ await expect(searchResultList).toBeVisible();
|
|
|
+ await expect(searchResultList.locator('li')).toHaveCount(1);
|
|
|
+ });
|
|
|
+
|
|
|
+ test('Successfully order page search results by tag', async ({ page }) => {
|
|
|
+ await page.goto('/');
|
|
|
+
|
|
|
+ await page.locator('.grw-tag-simple-bar').locator('a').click();
|
|
|
+
|
|
|
+ expect(page.getByTestId('search-result-base')).toBeVisible();
|
|
|
+ expect(page.getByTestId('search-result-list')).toBeVisible();
|
|
|
+ expect(page.getByTestId('search-result-content')).toBeVisible();
|
|
|
+ });
|
|
|
});
|
|
|
|
|
|
- test('Successfully order page search results by tag', async({ page }) => {
|
|
|
- await page.goto('/');
|
|
|
-
|
|
|
- await page.locator('.grw-tag-simple-bar').locator('a').click();
|
|
|
-
|
|
|
- expect(page.getByTestId('search-result-base')).toBeVisible();
|
|
|
- expect(page.getByTestId('search-result-list')).toBeVisible();
|
|
|
- expect(page.getByTestId('search-result-content')).toBeVisible();
|
|
|
- });
|
|
|
-});
|
|
|
-
|
|
|
test.describe('Sort with dropdown', () => {
|
|
|
- test.beforeEach(async({ page }) => {
|
|
|
+ test.beforeEach(async ({ page }) => {
|
|
|
await page.goto('/_search?q=sand');
|
|
|
|
|
|
await expect(page.getByTestId('search-result-base')).toBeVisible();
|
|
|
@@ -113,41 +119,40 @@ test.describe('Sort with dropdown', () => {
|
|
|
await page.locator('.search-control').locator('button').first().click();
|
|
|
});
|
|
|
|
|
|
- test('Open sort dropdown', async({ page }) => {
|
|
|
- await expect(page.locator('.search-control .dropdown-menu.show')).toBeVisible();
|
|
|
+ test('Open sort dropdown', async ({ page }) => {
|
|
|
+ await expect(
|
|
|
+ page.locator('.search-control .dropdown-menu.show'),
|
|
|
+ ).toBeVisible();
|
|
|
});
|
|
|
|
|
|
- test('Sort by relevance', async({ page }) => {
|
|
|
+ test('Sort by relevance', async ({ page }) => {
|
|
|
const dropdownMenu = page.locator('.search-control .dropdown-menu.show');
|
|
|
|
|
|
await expect(dropdownMenu).toBeVisible();
|
|
|
await dropdownMenu.locator('.dropdown-item').nth(0).click();
|
|
|
|
|
|
-
|
|
|
await expect(page.getByTestId('search-result-base')).toBeVisible();
|
|
|
await expect(page.getByTestId('search-result-list')).toBeVisible();
|
|
|
await expect(page.getByTestId('search-result-content')).toBeVisible();
|
|
|
});
|
|
|
|
|
|
- test('Sort by creation date', async({ page }) => {
|
|
|
+ test('Sort by creation date', async ({ page }) => {
|
|
|
const dropdownMenu = page.locator('.search-control .dropdown-menu.show');
|
|
|
|
|
|
await expect(dropdownMenu).toBeVisible();
|
|
|
await dropdownMenu.locator('.dropdown-item').nth(1).click();
|
|
|
|
|
|
-
|
|
|
await expect(page.getByTestId('search-result-base')).toBeVisible();
|
|
|
await expect(page.getByTestId('search-result-list')).toBeVisible();
|
|
|
await expect(page.getByTestId('search-result-content')).toBeVisible();
|
|
|
});
|
|
|
|
|
|
- test('Sort by last update date', async({ page }) => {
|
|
|
+ test('Sort by last update date', async ({ page }) => {
|
|
|
const dropdownMenu = page.locator('.search-control .dropdown-menu.show');
|
|
|
|
|
|
await expect(dropdownMenu).toBeVisible();
|
|
|
await dropdownMenu.locator('.dropdown-item').nth(2).click();
|
|
|
|
|
|
-
|
|
|
await expect(page.getByTestId('search-result-base')).toBeVisible();
|
|
|
await expect(page.getByTestId('search-result-list')).toBeVisible();
|
|
|
await expect(page.getByTestId('search-result-content')).toBeVisible();
|
|
|
@@ -155,22 +160,26 @@ test.describe('Sort with dropdown', () => {
|
|
|
});
|
|
|
|
|
|
test.describe('Search and use', () => {
|
|
|
- test.beforeEach(async({ page }) => {
|
|
|
+ test.beforeEach(async ({ page }) => {
|
|
|
await page.goto('/_search?q=alerts');
|
|
|
|
|
|
await expect(page.getByTestId('search-result-base')).toBeVisible();
|
|
|
await expect(page.getByTestId('search-result-list')).toBeVisible();
|
|
|
await expect(page.getByTestId('search-result-content')).toBeVisible();
|
|
|
|
|
|
- await page.getByTestId('page-list-item-L').first().getByTestId('open-page-item-control-btn').click();
|
|
|
+ await page
|
|
|
+ .getByTestId('page-list-item-L')
|
|
|
+ .first()
|
|
|
+ .getByTestId('open-page-item-control-btn')
|
|
|
+ .click();
|
|
|
await expect(page.locator('.dropdown-menu.show')).toBeVisible();
|
|
|
});
|
|
|
|
|
|
- test('Successfully the dropdown is opened', async({ page }) => {
|
|
|
+ test('Successfully the dropdown is opened', async ({ page }) => {
|
|
|
await expect(page.locator('.dropdown-menu.show')).toBeVisible();
|
|
|
});
|
|
|
|
|
|
- test('Successfully add bookmark', async({ page }) => {
|
|
|
+ test('Successfully add bookmark', async ({ page }) => {
|
|
|
const dropdonwMenu = page.locator('.dropdown-menu.show');
|
|
|
|
|
|
await expect(dropdonwMenu).toBeVisible();
|
|
|
@@ -178,10 +187,15 @@ test.describe('Search and use', () => {
|
|
|
// Add bookmark
|
|
|
await dropdonwMenu.getByTestId('add-bookmark-btn').click();
|
|
|
|
|
|
- await expect(page.getByTestId('search-result-content').locator('.btn-bookmark.active').first()).toBeVisible();
|
|
|
+ await expect(
|
|
|
+ page
|
|
|
+ .getByTestId('search-result-content')
|
|
|
+ .locator('.btn-bookmark.active')
|
|
|
+ .first(),
|
|
|
+ ).toBeVisible();
|
|
|
});
|
|
|
|
|
|
- test('Successfully open duplicate modal', async({ page }) => {
|
|
|
+ test('Successfully open duplicate modal', async ({ page }) => {
|
|
|
const dropdonwMenu = page.locator('.dropdown-menu.show');
|
|
|
|
|
|
await expect(dropdonwMenu).toBeVisible();
|
|
|
@@ -191,7 +205,7 @@ test.describe('Search and use', () => {
|
|
|
await expect(page.getByTestId('page-duplicate-modal')).toBeVisible();
|
|
|
});
|
|
|
|
|
|
- test('Successfully open move/rename modal', async({ page }) => {
|
|
|
+ test('Successfully open move/rename modal', async ({ page }) => {
|
|
|
const dropdonwMenu = page.locator('.dropdown-menu.show');
|
|
|
|
|
|
await expect(dropdonwMenu).toBeVisible();
|
|
|
@@ -201,7 +215,7 @@ test.describe('Search and use', () => {
|
|
|
await expect(page.getByTestId('page-rename-modal')).toBeVisible();
|
|
|
});
|
|
|
|
|
|
- test('Successfully open delete modal', async({ page }) => {
|
|
|
+ test('Successfully open delete modal', async ({ page }) => {
|
|
|
const dropdonwMenu = page.locator('.dropdown-menu.show');
|
|
|
|
|
|
await expect(dropdonwMenu).toBeVisible();
|
|
|
@@ -212,7 +226,7 @@ test.describe('Search and use', () => {
|
|
|
});
|
|
|
});
|
|
|
|
|
|
-test('Search current tree by word is successfully loaded', async({ page }) => {
|
|
|
+test('Search current tree by word is successfully loaded', async ({ page }) => {
|
|
|
await page.goto('/');
|
|
|
const searchText = 'GROWI';
|
|
|
|