Commit cb23b33f authored by Stan Hu's avatar Stan Hu

Fix time-dependent test failure in release_block_spec.js

This test was using timeago.js to show amount of time elapsed since the
release date. Since timeago.js uses Date() to determine the current
timestamp, we can just mock that value to ensure consistent results.

Closes https://gitlab.com/gitlab-org/gitlab/issues/35019
parent 5d2d1d79
...@@ -39,13 +39,25 @@ describe('Release block', () => { ...@@ -39,13 +39,25 @@ describe('Release block', () => {
const milestoneListLabel = () => wrapper.find('.js-milestone-list-label'); const milestoneListLabel = () => wrapper.find('.js-milestone-list-label');
const editButton = () => wrapper.find('.js-edit-button'); const editButton = () => wrapper.find('.js-edit-button');
const RealDate = Date;
beforeEach(() => { beforeEach(() => {
// timeago.js calls Date(), so let's mock that case to avoid time-dependent test failures.
const constantDate = new Date('2019-10-25T00:12:00');
/* eslint no-global-assign:off */
global.Date = jest.fn((...props) =>
props.length ? new RealDate(...props) : new RealDate(constantDate),
);
Object.assign(Date, RealDate);
releaseClone = JSON.parse(JSON.stringify(release)); releaseClone = JSON.parse(JSON.stringify(release));
}); });
afterEach(() => { afterEach(() => {
wrapper.destroy(); wrapper.destroy();
global.Date = RealDate;
}); });
describe('with default props', () => { describe('with default props', () => {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment