Files
query-tools/tests/core/duckdb.test.ts
T
zemion f44d0598da
Verify / verify (push) Canceled after 0s
Release Query Tools 0.2.0
2026-09-02 10:28:20 +02:00

26 lines
730 B
TypeScript

import { describe, expect, it } from "vitest";
import { parseDuckDbQuery } from "../../src/core/duckdb";
describe("DuckDB query boundary", () => {
it("records a single SELECT token stream", () => {
expect(
parseDuckDbQuery("SELECT team, avg(score) FROM data GROUP BY team"),
).toMatchObject({
type: "duckdb-query",
statement: "SELECT",
tokens: expect.arrayContaining([
{ kind: "word", value: "data", offset: 29 },
]),
});
});
it.each([
"INSTALL httpfs",
"SELECT * FROM data; DROP TABLE data",
"COPY data TO 'x.csv'",
"PRAGMA version",
])("rejects non-read-only statement %s", (source) => {
expect(() => parseDuckDbQuery(source)).toThrow();
});
});