Files
duckdb-ui/ts/pkgs/duckdb-ui-client/test/http/functions/makeDuckDBUIHttpRequestHeaders.test.ts
Jeff Raymakers 0edb52054a add duckdb-ui-client & other ts pkgs (#10)
* add duckdb-ui-client & other ts pkgs

* workflow fixes

* fix working dir

* no sparse checkout; specify package.json path

* path to pnpm-lock.yaml

* add check & build test

* workflow step descriptions

* use comments & names

* one more naming tweak
2025-06-13 09:16:05 -07:00

40 lines
1.3 KiB
TypeScript

import { expect, suite, test } from 'vitest';
import { makeDuckDBUIHttpRequestHeaders } from '../../../src/http/functions/makeDuckDBUIHttpRequestHeaders';
suite('makeDuckDBUIHttpRequestHeaders', () => {
test('description', () => {
expect([
...makeDuckDBUIHttpRequestHeaders({
description: 'example description',
}).entries(),
]).toEqual([['x-duckdb-ui-request-description', 'example description']]);
});
test('connection name', () => {
expect([
...makeDuckDBUIHttpRequestHeaders({
connectionName: 'example connection name',
}).entries(),
]).toEqual([['x-duckdb-ui-connection-name', 'example connection name']]);
});
test('database name', () => {
// should be base64 encoded
expect([
...makeDuckDBUIHttpRequestHeaders({
databaseName: 'example database name',
}).entries(),
]).toEqual([['x-duckdb-ui-database-name', 'ZXhhbXBsZSBkYXRhYmFzZSBuYW1l']]);
});
test('parameters', () => {
// values should be base64 encoded
expect([
...makeDuckDBUIHttpRequestHeaders({
parameters: ['first', 'second'],
}).entries(),
]).toEqual([
['x-duckdb-ui-parameter-count', '2'],
['x-duckdb-ui-parameter-value-0', 'Zmlyc3Q='],
['x-duckdb-ui-parameter-value-1', 'c2Vjb25k'],
]);
});
});