106 lines
2.3 KiB
JavaScript
106 lines
2.3 KiB
JavaScript
const { parse, inspect } = require('../../lib/index.cjs');
|
|
|
|
test('name cut off', () => {
|
|
const source = `
|
|
/**
|
|
* @param {{includeWhiteSpace: (boolean|undefined),
|
|
* ignoreElementOrder: (boolean|undefined)}} [options] The options.
|
|
*/`.slice(1);
|
|
|
|
const tagSource = [
|
|
{
|
|
number: 1,
|
|
source: ' * @param {{includeWhiteSpace: (boolean|undefined),',
|
|
tokens: {
|
|
start: ' ',
|
|
delimiter: '*',
|
|
postDelimiter: ' ',
|
|
tag: '@param',
|
|
postTag: ' ',
|
|
type: '{{includeWhiteSpace: (boolean|undefined),',
|
|
postType: '',
|
|
name: '',
|
|
postName: '',
|
|
description: '',
|
|
end: '',
|
|
lineEnd: '',
|
|
},
|
|
},
|
|
{
|
|
number: 2,
|
|
source:
|
|
' * ignoreElementOrder: (boolean|undefined)}} [options] The options.',
|
|
tokens: {
|
|
start: ' ',
|
|
delimiter: '*',
|
|
postDelimiter: ' ',
|
|
tag: '',
|
|
postTag: '',
|
|
type: ' ignoreElementOrder: (boolean|undefined)}}',
|
|
postType: ' ',
|
|
name: '[options]',
|
|
postName: ' ',
|
|
description: 'The options.',
|
|
end: '',
|
|
lineEnd: '',
|
|
},
|
|
},
|
|
{
|
|
number: 3,
|
|
source: ' */',
|
|
tokens: {
|
|
start: ' ',
|
|
delimiter: '',
|
|
postDelimiter: '',
|
|
tag: '',
|
|
postTag: '',
|
|
type: '',
|
|
postType: '',
|
|
name: '',
|
|
postName: '',
|
|
description: '',
|
|
end: '*/',
|
|
lineEnd: '',
|
|
},
|
|
},
|
|
];
|
|
|
|
const parsed = parse(source);
|
|
// console.log(inspect(parsed[0]));
|
|
|
|
expect(parsed[0]).toMatchObject({
|
|
problems: [],
|
|
tags: [
|
|
{
|
|
tag: 'param',
|
|
type: '{includeWhiteSpace: (boolean|undefined),ignoreElementOrder: (boolean|undefined)}',
|
|
name: 'options',
|
|
optional: true,
|
|
description: 'The options.',
|
|
source: tagSource,
|
|
},
|
|
],
|
|
source: [
|
|
{
|
|
number: 0,
|
|
source: ' /**',
|
|
tokens: {
|
|
start: ' ',
|
|
delimiter: '/**',
|
|
postDelimiter: '',
|
|
tag: '',
|
|
postTag: '',
|
|
type: '',
|
|
postType: '',
|
|
name: '',
|
|
postName: '',
|
|
description: '',
|
|
end: '',
|
|
lineEnd: '',
|
|
},
|
|
},
|
|
...tagSource,
|
|
],
|
|
});
|
|
});
|