Initial Commit
This commit is contained in:
@@ -0,0 +1,52 @@
|
||||
import { describe, expect, it } from "@suaveplan/testing/runner";
|
||||
import { connectAdapter } from "./helpers/connect.js";
|
||||
import { randomNamespace } from "./helpers/random-ns.js";
|
||||
import { surrealUnavailable } from "./integration-setup.js";
|
||||
|
||||
describe.skipIf(surrealUnavailable)(
|
||||
"SurrealDB init / INSERT INTO regression (real SurrealDB v3.0.4)",
|
||||
() => {
|
||||
it("INSERT INTO round-trips full content (regression for create-content-drop)", async () => {
|
||||
const ns = randomNamespace();
|
||||
const { adapter } = await connectAdapter({
|
||||
namespaceOverride: ns,
|
||||
databaseOverride: ns,
|
||||
});
|
||||
try {
|
||||
await adapter.execute("DEFINE TABLE person SCHEMAFULL");
|
||||
await adapter.execute(
|
||||
"DEFINE FIELD name ON person TYPE string"
|
||||
);
|
||||
await adapter.execute("DEFINE FIELD age ON person TYPE int");
|
||||
await adapter.execute(
|
||||
"INSERT INTO person { id: person:alice, name: 'Alice', age: 30 }"
|
||||
);
|
||||
const rows = await adapter.query<{
|
||||
id: unknown;
|
||||
name: string;
|
||||
age: number;
|
||||
}>("SELECT name, age FROM person:alice");
|
||||
expect(rows).toHaveLength(1);
|
||||
expect(rows[0]?.name).toBe("Alice");
|
||||
expect(rows[0]?.age).toBe(30);
|
||||
} finally {
|
||||
await adapter.disconnect();
|
||||
}
|
||||
}, 30000);
|
||||
|
||||
it("namespace + database can be created fresh", async () => {
|
||||
const ns = randomNamespace();
|
||||
const { adapter } = await connectAdapter({
|
||||
namespaceOverride: ns,
|
||||
databaseOverride: ns,
|
||||
});
|
||||
try {
|
||||
const info =
|
||||
await adapter.query<Record<string, unknown>>("INFO FOR DB");
|
||||
expect(info.length).toBeGreaterThan(0);
|
||||
} finally {
|
||||
await adapter.disconnect();
|
||||
}
|
||||
}, 30000);
|
||||
}
|
||||
);
|
||||
Reference in New Issue
Block a user