import { setTitle, updateRefPortionOfTitle } from '~/repository/utils/title'; describe('setTitle', () => { it.each` path | title ${'/'} | ${'Files'} ${'app'} | ${'app'} ${'app/assets'} | ${'app/assets'} ${'app/assets/javascripts'} | ${'app/assets/javascripts'} `('sets document title as $title for $path', ({ path, title }) => { setTitle(path, 'main', 'GitLab Org / GitLab'); expect(document.title).toEqual(`${title} · main · GitLab Org / GitLab · GitLab`); }); }); describe('updateRefPortionOfTitle', () => { const sha = 'abc'; const testCases = [ [ 'updates the title with the SHA', { title: 'part 1 · part 2 · part 3' }, 'part 1 · abc · part 3', ], ["makes no change if there's no title", { foo: null }, undefined], [ "makes no change if the title doesn't split predictably", { title: 'part 1 - part 2 - part 3' }, 'part 1 - part 2 - part 3', ], ]; it.each(testCases)('%s', (desc, doc, title) => { updateRefPortionOfTitle(sha, doc); expect(doc.title).toEqual(title); }); });