Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 4 additions & 3 deletions jest.config.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -32,15 +32,16 @@ const ignorePatterns = [
export default {
rootDir: fileURLToPath(new URL('.', import.meta.url)),
verbose: true,
// Default 5s timeout often fails on Windows :s,
// see https://github.com/facebook/docusaurus/pull/8259
testTimeout: 15000,
setupFiles: ['./jest/setup.js'],
testEnvironmentOptions: {
url: 'https://docusaurus.io/',
},
testEnvironment: 'node',
testPathIgnorePatterns: ignorePatterns,
// Default 5s timeout often fails on Windows :s,
// see https://github.com/facebook/docusaurus/pull/8259
testTimeout: 15000,
watchPathIgnorePatterns: ['/\\.docusaurus'],
coveragePathIgnorePatterns: [
...ignorePatterns,
// We also ignore all package entry points
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP

exports[`load loads props for site with custom i18n path 1`] = `
exports[`load loads props for site 1`] = `
{
"baseUrl": "/",
"codeTranslations": {},
Expand Down
28 changes: 12 additions & 16 deletions packages/docusaurus/src/server/__tests__/site.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,26 +6,22 @@
*/

import path from 'path';
import {mergeWithCustomize} from 'webpack-merge';
import {loadSetup} from './testUtils';
import type {Props} from '@docusaurus/types';
import type {DeepPartial} from 'utility-types';

describe('load', () => {
it('loads props for site with custom i18n path', async () => {
it('loads props for site', async () => {
const site = await loadSetup('custom-i18n-site');
expect(site.props).toMatchSnapshot();
const site2 = await loadSetup('custom-i18n-site', {locale: 'zh-Hans'});
expect(site2.props).toEqual(
mergeWithCustomize<DeepPartial<Props>>({
customizeArray(a, b, key) {
return ['routesPaths', 'plugins'].includes(key) ? b : undefined;
},
})(site.props, {
});

it('loads props for site - custom i18n path', async () => {
const site = await loadSetup('custom-i18n-site', {locale: 'zh-Hans'});
expect(site.props).toEqual(
expect.objectContaining({
baseUrl: '/zh-Hans/',
i18n: {
i18n: expect.objectContaining({
currentLocale: 'zh-Hans',
},
}),
localizationDir: path.join(
__dirname,
'__fixtures__/custom-i18n-site/i18n/zh-Hans-custom',
Expand All @@ -35,14 +31,14 @@ describe('load', () => {
'__fixtures__/custom-i18n-site/build/zh-Hans',
),
routesPaths: ['/zh-Hans/404.html'],
siteConfig: {
siteConfig: expect.objectContaining({
baseUrl: '/zh-Hans/',
},
}),
siteStorage: {
namespace: '',
type: 'localStorage',
},
plugins: site2.props.plugins,
plugins: site.props.plugins,
}),
);
});
Expand Down
Loading