diff options
author | GitLab Dependency Bot <leipert+gitlab-renovate-bot@gitlab.com> | 2022-11-04 04:38:28 +0300 |
---|---|---|
committer | David O'Regan <doregan@gitlab.com> | 2022-11-04 04:38:28 +0300 |
commit | 2c5b651038b9459a3b64e8345c1eb034aa7aa5d4 (patch) | |
tree | 988f01813f56e03de822a71475d233bc726da18e /spec | |
parent | bb23ecb1ec5ee924485ef2b17789438e871163b1 (diff) |
Update NodeJS dependencies
Diffstat (limited to 'spec')
-rw-r--r-- | spec/frontend/default/components/helpers/versions_menu_helper.js | 11 | ||||
-rw-r--r-- | spec/frontend/default/components/versions_menu_spec.js | 24 |
2 files changed, 25 insertions, 10 deletions
diff --git a/spec/frontend/default/components/helpers/versions_menu_helper.js b/spec/frontend/default/components/helpers/versions_menu_helper.js index bdc1fa88..5842880e 100644 --- a/spec/frontend/default/components/helpers/versions_menu_helper.js +++ b/spec/frontend/default/components/helpers/versions_menu_helper.js @@ -12,3 +12,14 @@ export const setWindowPath = (pathname) => { value: location, }); }; + +/** + * Creates a mock gitlab-docs-version metatag. + * @param {String} pathname + */ +export const setVersionMetatag = (version) => { + const meta = document.createElement('meta'); + meta.setAttribute('name', 'gitlab-docs-version'); + meta.setAttribute('content', version); + document.head.appendChild(meta); +}; diff --git a/spec/frontend/default/components/versions_menu_spec.js b/spec/frontend/default/components/versions_menu_spec.js index 8b0ede83..7de730d2 100644 --- a/spec/frontend/default/components/versions_menu_spec.js +++ b/spec/frontend/default/components/versions_menu_spec.js @@ -7,24 +7,22 @@ import flushPromises from 'flush-promises'; import VersionsMenu from '../../../../content/frontend/default/components/versions_menu.vue'; import { getVersions } from '../../../../content/frontend/services/fetch_versions'; import { mockVersions } from '../../__mocks__/versions_mock'; -import { setWindowPath } from './helpers/versions_menu_helper'; +import { setWindowPath, setVersionMetatag } from './helpers/versions_menu_helper'; jest.mock('../../../../content/frontend/services/fetch_versions'); beforeEach(() => { jest.clearAllMocks(); - - const meta = document.createElement('meta'); - meta.setAttribute('name', 'gitlab-docs-version'); - meta.setAttribute('content', '15.5'); - document.head.appendChild(meta); - getVersions.mockResolvedValueOnce(mockVersions); }); +afterEach(() => { + document.querySelector('meta[name="gitlab-docs-version"]').remove(); +}); describe('component: Versions menu', () => { it('Fetches versions.json and displays current version', async () => { const wrapper = mount(VersionsMenu); + setVersionMetatag(mockVersions.next); await flushPromises(); expect(getVersions).toHaveBeenCalledTimes(1); @@ -35,6 +33,7 @@ describe('component: Versions menu', () => { it('Generates correct menu links from the homepage', async () => { setWindowPath('/'); + setVersionMetatag(mockVersions.next); const wrapper = mount(VersionsMenu); expect(wrapper.vm.getVersionPath('')).toBe('/'); @@ -49,8 +48,10 @@ describe('component: Versions menu', () => { it('Generates correct menu links from an interior page', async () => { setWindowPath('/ee/user/project/issue_board.html'); + setVersionMetatag(mockVersions.next); + const wrapper = mount(VersionsMenu); - await wrapper.setData({ activeVersion: '15.3', versions: mockVersions }); + await wrapper.setData({ activeVersion: mockVersions.next, versions: mockVersions }); expect(wrapper.vm.getVersionPath('')).toBe('/ee/user/project/issue_board.html'); expect(wrapper.vm.getVersionPath(mockVersions.current)).toBe( @@ -66,8 +67,10 @@ describe('component: Versions menu', () => { it('Generates correct menu links from an older version', async () => { setWindowPath('/14.10/runner'); + setVersionMetatag('14.10'); + const wrapper = mount(VersionsMenu); - await wrapper.setData({ activeVersion: '14.10', versions: mockVersions }); + await wrapper.setData({ versions: mockVersions }); expect(wrapper.vm.getVersionPath('')).toBe('/runner'); expect(wrapper.vm.getVersionPath(mockVersions.current)).toBe(`/${mockVersions.current}/runner`); @@ -80,8 +83,9 @@ describe('component: Versions menu', () => { }); it('Shows simplified menu on non-production sites', async () => { + setVersionMetatag('14.10'); const wrapper = mount(VersionsMenu); - await wrapper.setData({ activeVersion: '14.10', versions: {} }); + await wrapper.setData({ versions: {} }); expect(wrapper.find('[data-testid="versions-menu"] a:nth-child(2)').exists()).toBe(false); }); }); |