diff options
Diffstat (limited to 'spec/frontend/shared/dom_parse_toc_spec.js')
-rw-r--r-- | spec/frontend/shared/dom_parse_toc_spec.js | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/spec/frontend/shared/dom_parse_toc_spec.js b/spec/frontend/shared/dom_parse_toc_spec.js new file mode 100644 index 00000000..adcacb90 --- /dev/null +++ b/spec/frontend/shared/dom_parse_toc_spec.js @@ -0,0 +1,18 @@ +import { parseTOC } from '../../../content/frontend/shared/dom_parse_toc'; +import { createItem, createTOCElement, createExampleToc } from './toc_helper'; + +describe('frontend/shared/dom_parse_toc', () => { + it('parses nested HTML list', () => { + const list = createExampleToc(); + const el = createTOCElement(list); + + expect(parseTOC(el)).toEqual(list); + }); + + it('skips items that do not have links', () => { + const list = [createItem('Lorem'), { items: [createItem('no link')] }, createItem('Ipsum')]; + const el = createTOCElement(list); + + expect(parseTOC(el)).toEqual([createItem('Lorem'), createItem('Ipsum')]); + }); +}); |