process-reporting-ts
Version:
Process reporting with typescript
43 lines (42 loc) • 1.62 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const util_1 = require("./util");
describe('Util', () => {
test('get function params on empty params', () => {
const fn = () => {
};
const answer = (0, util_1.getParameters)(fn);
expect(answer).toBeDefined();
expect(answer).toEqual([]);
});
test('get function params wth types', () => {
const fn = (a, b) => a + b;
const answer = (0, util_1.getParameters)(fn);
expect(answer).toBeDefined();
expect(answer).toEqual(['a', 'b']);
});
test('get function destructing params wth types', () => {
const fn = ({ a, b }) => a + b;
const answer = (0, util_1.getParameters)(fn);
expect(answer).toBeDefined();
expect(answer).toEqual(['a', 'b']);
});
test('get function params wth mixed types', () => {
const fn = ({ a, b, c }, foo, { h }) => a + b;
const answer = (0, util_1.getParameters)(fn);
expect(answer).toBeDefined();
expect(answer).toEqual(['a', 'b', 'c', 'foo', 'h']);
});
test('get function params wth multiple destructing types', () => {
const fn = ({ a, b }, { foo }) => a + b;
const answer = (0, util_1.getParameters)(fn);
expect(answer).toBeDefined();
expect(answer).toEqual(['a', 'b', 'foo']);
});
test('get function params wth var args', () => {
const fn = (...args) => true;
const answer = (0, util_1.getParameters)(fn);
expect(answer).toBeDefined();
expect(answer).toEqual(['args']);
});
});