test: e2e-schema-testcases (#3555)

Testcases for the following scenarios - 

- Verify if user is able to create stream with empty name 
- Verify if user navigates to logs and selects empty name stream and
then selects a stream with fields, all the data should load
- Verify if user is able to add field
- Verify if user is able to delete field
This commit is contained in:
Neha P
2024-05-21 15:25:20 +05:30
committed by GitHub
parent f8a686ddb0
commit 7d6e88ccd3
@@ -4,7 +4,7 @@ import { log } from "console";
import logsdata from "../../test-data/logs_data.json";
test.describe.configure({ mode: 'parallel' });
const folderName = `Folder ${Date.now()}`
const streamName = `stream${Date.now()}`
async function login(page) {
await page.goto(process.env["ZO_BASE_URL"]);
@@ -134,4 +134,72 @@ test.describe("Schema testcases", () => {
await page.getByText('{ arrow_drop_down_timestamp:').click();
})
test('should display stream details on navigating from blank stream to stream with details', async ({ page }) => {
await page.locator('[data-test="menu-link-\\/streams-item"]').click();
await page.locator('[data-test="log-stream-add-stream-btn"]').click();
await page.getByLabel('Name *').click();
await page.getByLabel('Name *').fill(streamName);
await page.locator('.q-form > div:nth-child(2) > .q-field > .q-field__inner > .q-field__control > .q-field__control-container > .q-field__native').click();
await page.getByRole('option', { name: 'Logs' }).locator('div').nth(2).click();
await page.locator('[data-test="save-stream-btn"]').click();
await page.waitForTimeout(1000);
await page.locator('[data-test="menu-link-\\/-item"]').click();
await page.locator('[data-test="menu-link-\\/logs-item"]').click();
await page.locator('#fnEditor > .monaco-editor > .overflow-guard > .monaco-scrollable-element > .lines-content > .view-lines > .view-line').click()
await page.locator('[data-test="log-search-index-list-select-stream"]').click();
await page.locator('[data-test="log-search-index-list-select-stream"]').fill(streamName);
await page.getByRole('option', { name: streamName }).locator('div').nth(2).click();
await page.waitForTimeout(1000);
await page.locator('[data-test="log-search-index-list-select-stream"]').click();
await page.locator('[data-test="log-search-index-list-select-stream"]').fill('e2e_automate');
await page.getByRole('option', { name: 'e2e_automate' }).locator('div').nth(2).click();
await page.waitForTimeout(4000);
await page.waitForSelector('text=Loading...', { state: 'hidden' });
await page.getByTitle('_timestamp').click();
await page.locator('[data-test="menu-link-\\/streams-item"]').click();
await page.getByPlaceholder('Search Stream').click();
await page.getByPlaceholder('Search Stream').fill(streamName);
await page.locator('[data-test="log-stream-refresh-stats-btn"]').click();
await page.getByPlaceholder('Search Stream').click();
await page.getByPlaceholder('Search Stream').click();
await page.getByRole('button', { name: 'Delete' }).click();
await page.getByRole('button', { name: 'Ok' }).click();
});
test('should details on navigating from blank stream to stream with details', async ({ page }) => {
await page.locator('[data-test="menu-link-\\/streams-item"]').click();
await page.getByPlaceholder('Search Stream').click();
await page.getByPlaceholder('Search Stream').fill('e2e_automate');
await page.getByRole('button', { name: 'Stream Detail' }).first().click();
await page.locator('[data-test="schema-stream-delete-kubernetes_annotations_kubectl_kubernetes_io_default_container-field-fts-key-checkbox"]').click();
await page.locator('[data-test="schema-stream-delete-kubernetes_annotations_kubernetes_io_psp-field-fts-key-checkbox"]').click();
await page.locator('[data-test="schema-add-field-button"]').click();
await page.locator('[data-test="schema-update-settings-button"]').click();
await page.locator('[data-test="add-stream-add-field-btn"]').click();
await page.getByPlaceholder('Name *').click();
await page.getByPlaceholder('Name *').fill('newtest');
await page.locator('[data-test="schema-update-settings-button"]').click();
await page.locator('[data-test="schema-stream-delete-newtest-field-fts-key-checkbox"]').click();
await page.locator('[data-test="schema-add-field-button"]').click();
await page.locator('[data-test="schema-update-settings-button"]').click();
await page.getByRole('cell', { name: 'newtest' }).first().click();
await page.locator('[data-test="schema-stream-delete-newtest-field-fts-key-checkbox"]').first().click();
await page.locator('[data-test="schema-delete-button"]').click();
await page.locator('[data-test="confirm-button"]').click();
await page.waitForTimeout(2000);
await page.locator('button').filter({ hasText: 'close' }).click()
await page.waitForTimeout(1000);
// await page.getByPlaceholder('Search Stream').click();
// await page.getByPlaceholder('Search Stream').fill('e2e_automate');
await page.getByRole('button', { name: 'Stream Detail' }).first().click();
await page.locator('[data-test="tab-schemaFields"]').click();
await page.locator('[data-test="schema-stream-delete-kubernetes_annotations_kubectl_kubernetes_io_default_container-field-fts-key-checkbox"]').click();
await page.locator('[data-test="schema-stream-delete-kubernetes_annotations_kubernetes_io_psp-field-fts-key-checkbox"]').click();
// await page.locator('[data-test="schema-stream-delete-oooo-field-fts-key-checkbox"]').click();
await page.locator('[data-test="schema-add-field-button"]').click();
await page.locator('[data-test="schema-update-settings-button"]').click();
})
})