| const { default: getParser } = require('../../lib/parser/index.cjs'); |
| |
| test('quoted name', () => { |
| const parsed = getParser()(` |
| /** |
| * @section "Brand Colors" - Here you can find all the brand colors... |
| */`); |
| |
| expect(parsed).toEqual([ |
| { |
| description: '', |
| tags: [ |
| { |
| tag: 'section', |
| name: 'Brand Colors', |
| type: '', |
| optional: false, |
| description: '- Here you can find all the brand colors...', |
| problems: [], |
| source: [ |
| { |
| number: 2, |
| source: |
| ' * @section "Brand Colors" - Here you can find all the brand colors...', |
| tokens: { |
| start: ' ', |
| delimiter: '*', |
| postDelimiter: ' ', |
| tag: '@section', |
| postTag: ' ', |
| name: '"Brand Colors"', |
| postName: ' ', |
| type: '', |
| postType: '', |
| description: '- Here you can find all the brand colors...', |
| end: '', |
| lineEnd: '', |
| }, |
| }, |
| { |
| number: 3, |
| source: ' */', |
| tokens: { |
| start: ' ', |
| delimiter: '', |
| postDelimiter: '', |
| tag: '', |
| postTag: '', |
| name: '', |
| postName: '', |
| type: '', |
| postType: '', |
| description: '', |
| end: '*/', |
| lineEnd: '', |
| }, |
| }, |
| ], |
| }, |
| ], |
| source: [ |
| { |
| number: 1, |
| source: ' /**', |
| tokens: { |
| start: ' ', |
| delimiter: '/**', |
| postDelimiter: '', |
| tag: '', |
| postTag: '', |
| name: '', |
| postName: '', |
| type: '', |
| postType: '', |
| description: '', |
| end: '', |
| lineEnd: '', |
| }, |
| }, |
| { |
| number: 2, |
| source: |
| ' * @section "Brand Colors" - Here you can find all the brand colors...', |
| tokens: { |
| start: ' ', |
| delimiter: '*', |
| postDelimiter: ' ', |
| tag: '@section', |
| postTag: ' ', |
| name: '"Brand Colors"', |
| postName: ' ', |
| type: '', |
| postType: '', |
| description: '- Here you can find all the brand colors...', |
| end: '', |
| lineEnd: '', |
| }, |
| }, |
| { |
| number: 3, |
| source: ' */', |
| tokens: { |
| start: ' ', |
| delimiter: '', |
| postDelimiter: '', |
| tag: '', |
| postTag: '', |
| name: '', |
| postName: '', |
| type: '', |
| postType: '', |
| description: '', |
| end: '*/', |
| lineEnd: '', |
| }, |
| }, |
| ], |
| problems: [], |
| }, |
| ]); |
| }); |
| |
| test('optional name', () => { |
| const parsed = getParser()(` |
| /** |
| * @section [Brand Colors] - Here you can find all the brand colors... |
| */`); |
| |
| expect(parsed).toEqual([ |
| { |
| description: '', |
| tags: [ |
| { |
| tag: 'section', |
| name: 'Brand Colors', |
| type: '', |
| optional: true, |
| description: '- Here you can find all the brand colors...', |
| problems: [], |
| source: [ |
| { |
| number: 2, |
| source: |
| ' * @section [Brand Colors] - Here you can find all the brand colors...', |
| tokens: { |
| start: ' ', |
| delimiter: '*', |
| postDelimiter: ' ', |
| tag: '@section', |
| postTag: ' ', |
| name: '[Brand Colors]', |
| postName: ' ', |
| type: '', |
| postType: '', |
| description: '- Here you can find all the brand colors...', |
| end: '', |
| lineEnd: '', |
| }, |
| }, |
| { |
| number: 3, |
| source: ' */', |
| tokens: { |
| start: ' ', |
| delimiter: '', |
| postDelimiter: '', |
| tag: '', |
| postTag: '', |
| name: '', |
| postName: '', |
| type: '', |
| postType: '', |
| description: '', |
| end: '*/', |
| lineEnd: '', |
| }, |
| }, |
| ], |
| }, |
| ], |
| source: [ |
| { |
| number: 1, |
| source: ' /**', |
| tokens: { |
| start: ' ', |
| delimiter: '/**', |
| postDelimiter: '', |
| tag: '', |
| postTag: '', |
| name: '', |
| postName: '', |
| type: '', |
| postType: '', |
| description: '', |
| end: '', |
| lineEnd: '', |
| }, |
| }, |
| { |
| number: 2, |
| source: |
| ' * @section [Brand Colors] - Here you can find all the brand colors...', |
| tokens: { |
| start: ' ', |
| delimiter: '*', |
| postDelimiter: ' ', |
| tag: '@section', |
| postTag: ' ', |
| name: '[Brand Colors]', |
| postName: ' ', |
| type: '', |
| postType: '', |
| description: '- Here you can find all the brand colors...', |
| end: '', |
| lineEnd: '', |
| }, |
| }, |
| { |
| number: 3, |
| source: ' */', |
| tokens: { |
| start: ' ', |
| delimiter: '', |
| postDelimiter: '', |
| tag: '', |
| postTag: '', |
| name: '', |
| postName: '', |
| type: '', |
| postType: '', |
| description: '', |
| end: '*/', |
| lineEnd: '', |
| }, |
| }, |
| ], |
| problems: [], |
| }, |
| ]); |
| }); |
| |
| test('inconsistent quotes', () => { |
| const parsed = getParser()(` |
| /** |
| * @section "Brand Colors - Here you can find all the brand colors... |
| */`); |
| |
| expect(parsed).toEqual([ |
| { |
| description: '', |
| tags: [ |
| { |
| tag: 'section', |
| name: '"Brand', |
| type: '', |
| optional: false, |
| description: 'Colors - Here you can find all the brand colors...', |
| problems: [], |
| source: [ |
| { |
| number: 2, |
| source: |
| ' * @section "Brand Colors - Here you can find all the brand colors...', |
| tokens: { |
| start: ' ', |
| delimiter: '*', |
| postDelimiter: ' ', |
| tag: '@section', |
| postTag: ' ', |
| name: '"Brand', |
| postName: ' ', |
| type: '', |
| postType: '', |
| description: |
| 'Colors - Here you can find all the brand colors...', |
| end: '', |
| lineEnd: '', |
| }, |
| }, |
| { |
| number: 3, |
| source: ' */', |
| tokens: { |
| start: ' ', |
| delimiter: '', |
| postDelimiter: '', |
| tag: '', |
| postTag: '', |
| name: '', |
| postName: '', |
| type: '', |
| postType: '', |
| description: '', |
| end: '*/', |
| lineEnd: '', |
| }, |
| }, |
| ], |
| }, |
| ], |
| source: [ |
| { |
| number: 1, |
| source: ' /**', |
| tokens: { |
| start: ' ', |
| delimiter: '/**', |
| postDelimiter: '', |
| tag: '', |
| postTag: '', |
| name: '', |
| postName: '', |
| type: '', |
| postType: '', |
| description: '', |
| end: '', |
| lineEnd: '', |
| }, |
| }, |
| { |
| number: 2, |
| source: |
| ' * @section "Brand Colors - Here you can find all the brand colors...', |
| tokens: { |
| start: ' ', |
| delimiter: '*', |
| postDelimiter: ' ', |
| tag: '@section', |
| postTag: ' ', |
| name: '"Brand', |
| postName: ' ', |
| type: '', |
| postType: '', |
| description: 'Colors - Here you can find all the brand colors...', |
| end: '', |
| lineEnd: '', |
| }, |
| }, |
| { |
| number: 3, |
| source: ' */', |
| tokens: { |
| start: ' ', |
| delimiter: '', |
| postDelimiter: '', |
| tag: '', |
| postTag: '', |
| name: '', |
| postName: '', |
| type: '', |
| postType: '', |
| description: '', |
| end: '*/', |
| lineEnd: '', |
| }, |
| }, |
| ], |
| problems: [], |
| }, |
| ]); |
| }); |