improve DEFAULT_TEST_VCS_CONFIG, cleanup tests

This commit is contained in:
sebastien 2025-11-14 13:52:23 +01:00
parent 5868a9248d
commit f259f4f807
3 changed files with 29 additions and 18 deletions

View File

@ -13,7 +13,7 @@ import {
posixPath,
DEFAULT_PLUGIN_ID,
getLocaleConfig,
VCS_HARDCODED_LAST_UPDATE_INFO,
DEFAULT_TEST_VCS_CONFIG,
} from '@docusaurus/utils';
import {getTagsFile} from '@docusaurus/utils-validation';
import {createSidebarsUtils} from '../sidebars/utils';
@ -529,8 +529,8 @@ describe('simple site', () => {
custom_edit_url: 'https://github.com/customUrl/docs/lorem.md',
unrelated_front_matter: "won't be part of metadata",
},
lastUpdatedAt: VCS_HARDCODED_LAST_UPDATE_INFO.timestamp,
lastUpdatedBy: VCS_HARDCODED_LAST_UPDATE_INFO.author,
lastUpdatedAt: DEFAULT_TEST_VCS_CONFIG.LAST_UPDATE_INFO.timestamp,
lastUpdatedBy: DEFAULT_TEST_VCS_CONFIG.LAST_UPDATE_INFO.author,
tags: [],
unlisted: false,
});
@ -664,7 +664,7 @@ describe('simple site', () => {
},
title: 'Last Update Author Only',
},
lastUpdatedAt: VCS_HARDCODED_LAST_UPDATE_INFO.timestamp,
lastUpdatedAt: DEFAULT_TEST_VCS_CONFIG.LAST_UPDATE_INFO.timestamp,
lastUpdatedBy: 'Custom Author (processed by parseFrontMatter)',
sidebarPosition: undefined,
tags: [],

View File

@ -6,11 +6,7 @@
*/
import {readLastUpdateData} from '../lastUpdateUtils';
import {
VcsHardcoded,
VCS_HARDCODED_UNTRACKED_FILE_PATH,
VCS_HARDCODED_LAST_UPDATE_INFO,
} from '../vcs/vcsHardcoded';
import {DEFAULT_TEST_VCS_CONFIG} from '../vcs/vcs';
import type {FrontMatterLastUpdate} from '../lastUpdateUtils';
@ -28,7 +24,7 @@ describe('readLastUpdateData', () => {
filePath,
options,
lastUpdateFrontMatter,
VcsHardcoded,
DEFAULT_TEST_VCS_CONFIG,
);
}
@ -37,7 +33,7 @@ describe('readLastUpdateData', () => {
lastUpdateFrontMatter: FrontMatterLastUpdate | undefined,
) {
return readData(
VCS_HARDCODED_UNTRACKED_FILE_PATH,
DEFAULT_TEST_VCS_CONFIG.UNTRACKED_FILE_PATH,
{showLastUpdateAuthor: true, showLastUpdateTime: true},
lastUpdateFrontMatter,
);
@ -73,7 +69,7 @@ describe('readLastUpdateData', () => {
{date: testDate},
);
expect(lastUpdatedAt).toEqual(testTimestamp);
expect(lastUpdatedBy).toBe(VCS_HARDCODED_LAST_UPDATE_INFO.author);
expect(lastUpdatedBy).toBe(DEFAULT_TEST_VCS_CONFIG.LAST_UPDATE_INFO.author);
});
it('read last author show author time', async () => {
@ -83,7 +79,9 @@ describe('readLastUpdateData', () => {
{author: testAuthor},
);
expect(lastUpdatedBy).toEqual(testAuthor);
expect(lastUpdatedAt).toBe(VCS_HARDCODED_LAST_UPDATE_INFO.timestamp);
expect(lastUpdatedAt).toBe(
DEFAULT_TEST_VCS_CONFIG.LAST_UPDATE_INFO.timestamp,
);
});
it('read last all show author time', async () => {
@ -120,7 +118,7 @@ describe('readLastUpdateData', () => {
{showLastUpdateAuthor: true, showLastUpdateTime: false},
{date: testDate},
);
expect(lastUpdatedBy).toBe(VCS_HARDCODED_LAST_UPDATE_INFO.author);
expect(lastUpdatedBy).toBe(DEFAULT_TEST_VCS_CONFIG.LAST_UPDATE_INFO.author);
expect(lastUpdatedAt).toBeUndefined();
});
@ -140,7 +138,7 @@ describe('readLastUpdateData', () => {
{showLastUpdateAuthor: true, showLastUpdateTime: false},
{},
);
expect(lastUpdatedBy).toBe(VCS_HARDCODED_LAST_UPDATE_INFO.author);
expect(lastUpdatedBy).toBe(DEFAULT_TEST_VCS_CONFIG.LAST_UPDATE_INFO.author);
expect(lastUpdatedAt).toBeUndefined();
});
@ -161,7 +159,9 @@ describe('readLastUpdateData', () => {
{author: testAuthor},
);
expect(lastUpdatedBy).toBeUndefined();
expect(lastUpdatedAt).toEqual(VCS_HARDCODED_LAST_UPDATE_INFO.timestamp);
expect(lastUpdatedAt).toEqual(
DEFAULT_TEST_VCS_CONFIG.LAST_UPDATE_INFO.timestamp,
);
});
it('read last author show time only - both front matter', async () => {

View File

@ -5,7 +5,12 @@
* LICENSE file in the root directory of this source tree.
*/
import {VcsHardcoded} from './vcsHardcoded';
import {
VCS_HARDCODED_CREATION_INFO,
VCS_HARDCODED_LAST_UPDATE_INFO,
VCS_HARDCODED_UNTRACKED_FILE_PATH,
VcsHardcoded,
} from './vcsHardcoded';
import {VcsGitAdHoc} from './vcsGitAdHoc';
import {VscGitEager} from './vcsGitEager';
import {VcsDisabled} from './vcsDisabled';
@ -40,4 +45,10 @@ export function getVcsPreset(presetName: VcsPreset): VcsConfig {
}
}
export const DEFAULT_TEST_VCS_CONFIG: VcsConfig = VcsHardcoded;
// Convenient export for writing unit tests depending on VCS
export const DEFAULT_TEST_VCS_CONFIG = {
CREATION_INFO: VCS_HARDCODED_CREATION_INFO,
LAST_UPDATE_INFO: VCS_HARDCODED_LAST_UPDATE_INFO,
UNTRACKED_FILE_PATH: VCS_HARDCODED_UNTRACKED_FILE_PATH,
...VcsHardcoded,
};