@unito/integration-sdk
Version:
Integration SDK
35 lines (28 loc) • 942 B
text/typescript
import express from 'express';
import assert from 'node:assert/strict';
import { describe, it } from 'node:test';
import extractSelects from '../../src/middlewares/selects.js';
describe('selects middleware', () => {
it('data', () => {
const request = { query: { select: 'foo,bar.spam,baz,a%23b' } } as express.Request<
// eslint-disable-next-line @typescript-eslint/no-explicit-any
any,
object,
object,
{ select: string }
>;
const response = { locals: {} } as express.Response;
extractSelects(request, response, () => {});
assert.deepEqual(response.locals, {
selects: ['foo', 'bar.spam', 'baz', 'a#b'],
});
});
it('no data', () => {
const request = { query: {} } as express.Request;
const response = { locals: {} } as express.Response;
extractSelects(request, response, () => {});
assert.deepEqual(response.locals, {
selects: [],
});
});
});