Skip to content

Commit

Permalink
feat(remark-config): leveraged the config-file writer to get better f…
Browse files Browse the repository at this point in the history
…ormatting
  • Loading branch information
travi committed Jun 10, 2022
1 parent 93917bf commit ed5c335
Show file tree
Hide file tree
Showing 2 changed files with 73 additions and 55 deletions.
113 changes: 64 additions & 49 deletions src/scaffolder/verification/linting/remark-test.js
Original file line number Diff line number Diff line change
@@ -1,8 +1,11 @@
import {promises as fsPromises} from 'fs';
import {fileTypes} from '@form8ion/core';
import {dialects, projectTypes} from '@form8ion/javascript-core';
import * as configFile from '@form8ion/config-file';

import {assert} from 'chai';
import any from '@travi/any';
import sinon from 'sinon';

import scaffoldRemark from './remark';

suite('remark config scaffolder', () => {
Expand All @@ -11,7 +14,7 @@ suite('remark config scaffolder', () => {
setup(() => {
sandbox = sinon.createSandbox();

sandbox.stub(fsPromises, 'writeFile');
sandbox.stub(configFile, 'write');
});

teardown(() => sandbox.restore());
Expand All @@ -28,21 +31,25 @@ suite('remark config scaffolder', () => {
}
);
assert.calledWith(
fsPromises.writeFile,
`${projectRoot}/.remarkrc.json`,
JSON.stringify({
settings: {
listItemIndent: 1,
emphasis: '_',
strong: '_',
bullet: '*',
incrementListMarker: false
},
plugins: [
config,
['remark-toc', {tight: true}]
]
})
configFile.write,
{
format: fileTypes.JSON,
path: projectRoot,
name: 'remark',
config: {
settings: {
listItemIndent: 1,
emphasis: '_',
strong: '_',
bullet: '*',
incrementListMarker: false
},
plugins: [
config,
['remark-toc', {tight: true}]
]
}
}
);
});

Expand All @@ -64,22 +71,26 @@ suite('remark config scaffolder', () => {
}
);
assert.calledWith(
fsPromises.writeFile,
`${projectRoot}/.remarkrc.json`,
JSON.stringify({
settings: {
listItemIndent: 1,
emphasis: '_',
strong: '_',
bullet: '*',
incrementListMarker: false
},
plugins: [
config,
['remark-toc', {tight: true}],
['remark-usage', {heading: 'example'}]
]
})
configFile.write,
{
format: fileTypes.JSON,
path: projectRoot,
name: 'remark',
config: {
settings: {
listItemIndent: 1,
emphasis: '_',
strong: '_',
bullet: '*',
incrementListMarker: false
},
plugins: [
config,
['remark-toc', {tight: true}],
['remark-usage', {heading: 'example'}]
]
}
}
);
});

Expand Down Expand Up @@ -128,22 +139,26 @@ suite('remark config scaffolder', () => {

await scaffoldRemark({config, projectRoot, vcs: undefined});
assert.calledWith(
fsPromises.writeFile,
`${projectRoot}/.remarkrc.json`,
JSON.stringify({
settings: {
listItemIndent: 1,
emphasis: '_',
strong: '_',
bullet: '*',
incrementListMarker: false
},
plugins: [
config,
['remark-toc', {tight: true}],
['validate-links', {repository: false}]
]
})
configFile.write,
{
format: fileTypes.JSON,
path: projectRoot,
name: 'remark',
config: {
settings: {
listItemIndent: 1,
emphasis: '_',
strong: '_',
bullet: '*',
incrementListMarker: false
},
plugins: [
config,
['remark-toc', {tight: true}],
['validate-links', {repository: false}]
]
}
}
);
});
});
15 changes: 9 additions & 6 deletions src/scaffolder/verification/linting/remark.js
Original file line number Diff line number Diff line change
@@ -1,11 +1,14 @@
import {promises as fsPromises} from 'fs';
import deepmerge from 'deepmerge';
import {fileTypes} from '@form8ion/core';
import {dialects, projectTypes} from '@form8ion/javascript-core';
import {write} from '@form8ion/config-file';

export default async function ({config, projectRoot, projectType, vcs, dialect}) {
await fsPromises.writeFile(
`${projectRoot}/.remarkrc.json`,
JSON.stringify({
await write({
format: fileTypes.JSON,
path: projectRoot,
name: 'remark',
config: {
settings: {
listItemIndent: 1,
emphasis: '_',
Expand All @@ -19,8 +22,8 @@ export default async function ({config, projectRoot, projectType, vcs, dialect})
...projectTypes.PACKAGE === projectType ? [['remark-usage', {heading: 'example'}]] : [],
...!vcs ? [['validate-links', {repository: false}]] : []
]
})
);
}
});

return deepmerge(
{
Expand Down

0 comments on commit ed5c335

Please sign in to comment.