25 lines
1.1 KiB
TypeScript
Vendored
25 lines
1.1 KiB
TypeScript
Vendored
import { describe, expect, it } from "vitest";
|
|
import { DOLT_SQL_ROUTINES, doltSqlBuiltinTerms, doltSqlRoutineSignatures, isDoltDriverProfile } from "@/lib/database/doltProfile";
|
|
|
|
describe("doltProfile", () => {
|
|
it("matches only the dedicated Dolt driver profile", () => {
|
|
expect(isDoltDriverProfile("dolt")).toBe(true);
|
|
expect(isDoltDriverProfile("DOLT")).toBe(true);
|
|
expect(isDoltDriverProfile("mysql")).toBe(false);
|
|
expect(isDoltDriverProfile()).toBe(false);
|
|
});
|
|
|
|
it("exposes Dolt routines only for Dolt connections", () => {
|
|
expect(doltSqlBuiltinTerms("mysql")).toBe("");
|
|
expect(doltSqlRoutineSignatures("mysql").size).toBe(0);
|
|
|
|
const terms = new Set(doltSqlBuiltinTerms("dolt").split(" "));
|
|
const signatures = doltSqlRoutineSignatures("dolt");
|
|
expect(terms.has("active_branch")).toBe(true);
|
|
expect(terms.has("dolt_branch")).toBe(true);
|
|
expect(terms.has("dolt_version")).toBe(true);
|
|
expect(signatures.get("DOLT_MERGE_BASE")).toEqual(["revision_a", "revision_b"]);
|
|
expect(signatures.size).toBe(DOLT_SQL_ROUTINES.length);
|
|
});
|
|
});
|