|
|
|
import { test } from "@playwright/test";
|
|
|
|
import { DashboardPage } from "../pages/Dashboard";
|
|
|
|
import { SettingsPage, SettingTab } from "../pages/Dashboard/Settings";
|
|
|
|
import setup from "../setup";
|
|
|
|
|
|
|
|
test.describe("Table Operations", () => {
|
|
|
|
let dashboard: DashboardPage, settings: SettingsPage;
|
|
|
|
let context: any;
|
|
|
|
|
|
|
|
test.beforeEach(async ({ page }) => {
|
|
|
|
context = await setup({ page });
|
|
|
|
dashboard = new DashboardPage(page, context.project);
|
|
|
|
settings = dashboard.settings;
|
|
|
|
});
|
|
|
|
|
|
|
|
test("Create, and delete table, verify in audit tab, rename City table and reorder tables", async () => {
|
|
|
|
await dashboard.treeView.createTable({ title: "tablex" });
|
|
|
|
await dashboard.treeView.verifyTable({ title: "tablex" });
|
|
|
|
|
|
|
|
await dashboard.treeView.deleteTable({ title: "tablex" });
|
|
|
|
await dashboard.treeView.verifyTable({ title: "tablex", exists: false });
|
|
|
|
|
|
|
|
await dashboard.gotoSettings();
|
|
|
|
await settings.selectTab({ tab: SettingTab.Audit });
|
|
|
|
await settings.audit.verifyRow({
|
|
|
|
index: 0,
|
|
|
|
opType: "TABLE",
|
|
|
|
opSubtype: "DELETED",
|
|
|
|
user: "user@nocodb.com",
|
|
|
|
});
|
|
|
|
await settings.audit.verifyRow({
|
|
|
|
index: 1,
|
|
|
|
opType: "TABLE",
|
|
|
|
opSubtype: "CREATED",
|
|
|
|
user: "user@nocodb.com",
|
|
|
|
});
|
|
|
|
await settings.close();
|
|
|
|
|
|
|
|
await dashboard.treeView.renameTable({ title: "City", newTitle: "Cityx" });
|
|
|
|
await dashboard.treeView.verifyTable({ title: "Cityx" });
|
|
|
|
|
|
|
|
await dashboard.treeView.focusTable({ title: "Actor" });
|
|
|
|
await dashboard.treeView.verifyTable({ title: "Actor", index: 0 });
|
|
|
|
await dashboard.treeView.reorderTables({
|
|
|
|
sourceTable: "Actor",
|
|
|
|
destinationTable: "Address",
|
|
|
|
});
|
|
|
|
await dashboard.treeView.verifyTable({ title: "Address", index: 0 });
|
|
|
|
});
|
|
|
|
});
|