mirror of https://github.com/nocodb/nocodb
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
77 lines
1.7 KiB
77 lines
1.7 KiB
1 year ago
|
import { expect } from '@playwright/test';
|
||
|
import BasePage from '../../Base';
|
||
|
import { DataSourcePage } from './DataSourcePage';
|
||
|
|
||
|
export class AuditPage extends BasePage {
|
||
|
constructor(dataSource: DataSourcePage) {
|
||
|
super(dataSource.rootPage);
|
||
|
}
|
||
|
|
||
|
get() {
|
||
|
return this.rootPage.locator('div.ant-modal-content');
|
||
|
}
|
||
|
async verifyRow({
|
||
|
index,
|
||
|
opType,
|
||
|
opSubtype,
|
||
|
description,
|
||
|
user,
|
||
|
created,
|
||
|
}: {
|
||
|
index: number;
|
||
|
opType?: string;
|
||
|
opSubtype?: string;
|
||
|
description?: string;
|
||
|
user?: string;
|
||
|
created?: string;
|
||
|
}) {
|
||
|
const table = this.get().locator('[data-testid="audit-tab-table"]');
|
||
|
const row = table.locator(`tr.ant-table-row`).nth(index);
|
||
|
|
||
|
if (opType) {
|
||
|
await row
|
||
|
.locator(`td.ant-table-cell`)
|
||
|
.nth(0)
|
||
|
.textContent()
|
||
|
.then(async text => expect(text).toContain(opType));
|
||
|
}
|
||
|
|
||
|
if (opSubtype) {
|
||
|
await row
|
||
|
.locator(`td.ant-table-cell`)
|
||
|
.nth(1)
|
||
|
.textContent()
|
||
|
.then(async text => expect(text).toContain(opSubtype));
|
||
|
}
|
||
|
|
||
|
if (description) {
|
||
|
await row
|
||
|
.locator(`td.ant-table-cell`)
|
||
|
.nth(2)
|
||
|
.textContent()
|
||
|
.then(async text => expect(text).toContain(description));
|
||
|
}
|
||
|
|
||
|
if (user) {
|
||
|
await row
|
||
|
.locator(`td.ant-table-cell`)
|
||
|
.nth(3)
|
||
|
.textContent()
|
||
|
.then(async text => expect(text).toContain(user));
|
||
|
}
|
||
|
|
||
|
if (created) {
|
||
|
await row
|
||
|
.locator(`td.ant-table-cell`)
|
||
|
.nth(4)
|
||
|
.textContent()
|
||
|
.then(async text => expect(text).toContain(created));
|
||
|
}
|
||
|
}
|
||
|
|
||
|
async close() {
|
||
|
await this.get().click();
|
||
|
await this.rootPage.keyboard.press('Escape');
|
||
|
}
|
||
|
}
|