chore(v2): ability to test the migration cli easily (#3113)

* ability to test the migration cli easily

* add node scripts to help test migration cli (locally + CI)

* add test for frontmatter quotify

* more tests for shouldQuotifyFrontMatter

* typo

* updated yarn lock
This commit is contained in:
Sébastien Lorber 2020-07-24 15:07:24 +02:00 committed by GitHub
parent 6aec331963
commit a0ef8939a1
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
7 changed files with 69 additions and 20 deletions

View file

@ -17,7 +17,7 @@ import {
ClassicPresetEntries,
SidebarEntries,
} from './types';
import extractMetadata from './frontMatter';
import extractMetadata, {shouldQuotifyFrontMatter} from './frontMatter';
import migratePage from './transform';
import sanitizeMD from './sanitizeMD';
import path from 'path';
@ -46,13 +46,9 @@ function sanitizedFileContent(
): string {
const extractedData = extractMetadata(content);
const extractedMetaData = Object.entries(extractedData.metadata).reduce(
(metaData, value) => {
return `${metaData}\n${value[0]}: ${
value[0] === 'tags' ||
!!String(value[1]).match(/^(\w| |\.|-)+$/m) ||
String(value[1]).match(/^("|').+("|')$/)
? value[1]
: `"${value[1]}"`
(metaData, [key, value]) => {
return `${metaData}\n${key}: ${
shouldQuotifyFrontMatter([key, value]) ? `"${value}"` : value
}`;
},
'',
@ -377,7 +373,7 @@ function createPages(newDir: string, siteDir: string): void {
function createDefaultLandingPage(newDir: string) {
const indexPage = `import Layout from "@theme/Layout";
import React from "react";
export default () => {
return <Layout />;
};