Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-docs.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/spec
diff options
context:
space:
mode:
authorGitLab Dependency Bot <leipert+gitlab-renovate-bot@gitlab.com>2022-11-04 04:38:28 +0300
committerDavid O'Regan <doregan@gitlab.com>2022-11-04 04:38:28 +0300
commit2c5b651038b9459a3b64e8345c1eb034aa7aa5d4 (patch)
tree988f01813f56e03de822a71475d233bc726da18e /spec
parentbb23ecb1ec5ee924485ef2b17789438e871163b1 (diff)
Update NodeJS dependencies
Diffstat (limited to 'spec')
-rw-r--r--spec/frontend/default/components/helpers/versions_menu_helper.js11
-rw-r--r--spec/frontend/default/components/versions_menu_spec.js24
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);
});
});