12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- const { parse, inspect } = require('../../lib/index.cjs');
-
- const source = `
- /**
- * Typedef with multi-line property type.
- *
- * @typedef {object} MyType
- * @property {function(
- * number,
- * {x:string}
- * )} numberEater Method
- * which takes a number.
- */`;
-
- test('default', () => {
- const parsed = parse(source);
- // console.log(inspect(parsed[0]));
- expect(parsed[0].tags[1]).toMatchObject({
- tag: 'property',
- type: 'function(number,{x:string})',
- name: 'numberEater',
- description: 'Method which takes a number.',
- problems: [],
- });
- });
-
- test('preserve', () => {
- const parsed = parse(source, { spacing: 'preserve' });
- // console.log(inspect(parsed[0]));
- expect(parsed[0].tags[1]).toMatchObject({
- tag: 'property',
- type: 'function(\n number,\n {x:string}\n)',
- name: 'numberEater',
- description: 'Method\n which takes a number.',
- problems: [],
- });
- });
-
- test('compact', () => {
- const parsed = parse(source, { spacing: 'compact' });
- // console.log(inspect(parsed[0]));
- expect(parsed[0].tags[1]).toMatchObject({
- tag: 'property',
- type: 'function(number,{x:string})',
- name: 'numberEater',
- description: 'Method which takes a number.',
- problems: [],
- });
- });
|