Skip to content

Commit fe6e017

Browse files
committed
test: add
1 parent edca0aa commit fe6e017

File tree

1 file changed

+45
-0
lines changed

1 file changed

+45
-0
lines changed
Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
import assert from 'node:assert/strict';
2+
import { describe, it } from 'node:test';
3+
4+
import { generateSignature } from '../buildSignature.mjs';
5+
6+
describe('generateSignature - return type spacing', () => {
7+
it('formats union return types without spaces as spaced ("|" surrounded)', () => {
8+
const sig = generateSignature(
9+
'foo',
10+
{
11+
params: [],
12+
return: { type: 'string|number' },
13+
},
14+
''
15+
);
16+
17+
assert.equal(sig, 'foo(): string | number');
18+
});
19+
20+
it('preserves already spaced union return types', () => {
21+
const sig = generateSignature(
22+
'bar',
23+
{
24+
params: [],
25+
return: { type: 'Promise<string> | undefined' },
26+
},
27+
''
28+
);
29+
30+
assert.equal(sig, 'bar(): Promise<string> | undefined');
31+
});
32+
33+
it('omits return type when undefined', () => {
34+
const sig = generateSignature(
35+
'baz',
36+
{
37+
params: [],
38+
return: undefined,
39+
},
40+
''
41+
);
42+
43+
assert.equal(sig, 'baz()');
44+
});
45+
});

0 commit comments

Comments
 (0)