feat(gaussdb): allow clearing query schema
This commit is contained in:
parent
7c43c03254
commit
ef76b137bb
|
|
@ -39,7 +39,7 @@ export const SCHEMA_AWARE_TYPES = new Set<DatabaseType>([
|
|||
|
||||
export const SINGLE_DATABASE_TYPES = new Set<DatabaseType>(["oracle", "dameng", "firebird", "oceanbase-oracle", "access", "questdb"]);
|
||||
|
||||
export const CLEARABLE_QUERY_SCHEMA_TYPES = new Set<DatabaseType>(["oracle", "dameng", "oceanbase-oracle"]);
|
||||
export const CLEARABLE_QUERY_SCHEMA_TYPES = new Set<DatabaseType>(["oracle", "dameng", "gaussdb", "oceanbase-oracle"]);
|
||||
|
||||
export const FETCH_FIRST_TYPES = new Set<DatabaseType>(["oracle", "dameng"]);
|
||||
|
||||
|
|
|
|||
|
|
@ -33,12 +33,14 @@ test("visible schema menu capability preserves adjacent database families", () =
|
|||
assert.equal(canConfigureVisibleSchemasForTreeNode("mysql", "database", "app"), false);
|
||||
});
|
||||
|
||||
test("only Oracle-compatible single-database schemas can be cleared from query tabs", () => {
|
||||
test("only explicitly supported query schemas can be cleared from query tabs", () => {
|
||||
assert.equal(supportsClearableQuerySchema("oracle"), true);
|
||||
assert.equal(supportsClearableQuerySchema("dameng"), true);
|
||||
assert.equal(supportsClearableQuerySchema("gaussdb"), true);
|
||||
assert.equal(supportsClearableQuerySchema("oceanbase-oracle"), true);
|
||||
assert.equal(supportsClearableQuerySchema("mysql"), false);
|
||||
assert.equal(supportsClearableQuerySchema("postgres"), false);
|
||||
assert.equal(supportsClearableQuerySchema("opengauss"), false);
|
||||
assert.equal(supportsClearableQuerySchema("sqlserver"), false);
|
||||
assert.equal(supportsClearableQuerySchema("jdbc"), false);
|
||||
});
|
||||
|
|
|
|||
|
|
@ -49,9 +49,9 @@ function oracleConn(id: string): ConnectionConfig {
|
|||
};
|
||||
}
|
||||
|
||||
function oracleCompatibleConn(id: string, dbType: "oracle" | "dameng" | "oceanbase-oracle"): ConnectionConfig {
|
||||
function clearableQuerySchemaConn(id: string, dbType: "oracle" | "dameng" | "gaussdb" | "oceanbase-oracle"): ConnectionConfig {
|
||||
return {
|
||||
...oracleConn(id),
|
||||
...conn(id),
|
||||
db_type: dbType,
|
||||
};
|
||||
}
|
||||
|
|
@ -4246,7 +4246,7 @@ test("closing a data tab releases its tab-scoped client session", async () => {
|
|||
}
|
||||
});
|
||||
|
||||
for (const dbType of ["oracle", "dameng", "oceanbase-oracle"] as const) {
|
||||
for (const dbType of ["oracle", "dameng", "gaussdb", "oceanbase-oracle"] as const) {
|
||||
test(`clearing a ${dbType} query schema releases its tab-scoped client session`, async () => {
|
||||
const restoreStorage = installMemoryStorage();
|
||||
setActivePinia(createPinia());
|
||||
|
|
@ -4255,7 +4255,7 @@ for (const dbType of ["oracle", "dameng", "oceanbase-oracle"] as const) {
|
|||
const originalFetch = globalThis.fetch;
|
||||
const connectionId = `${dbType}-1`;
|
||||
|
||||
connectionStore.addEphemeralConnection(oracleCompatibleConn(connectionId, dbType));
|
||||
connectionStore.addEphemeralConnection(clearableQuerySchemaConn(connectionId, dbType));
|
||||
const tabId = store.createTab(connectionId, "SERVICE", "Query", "query", "REPORTING");
|
||||
const closedSessions: any[] = [];
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue