Skip to content

Commit

Permalink
test(@putout/processor) javascript
Browse files Browse the repository at this point in the history
  • Loading branch information
coderaiser committed Nov 1, 2020
1 parent 8755b92 commit 5c5347c
Show file tree
Hide file tree
Showing 25 changed files with 187 additions and 134 deletions.
47 changes: 11 additions & 36 deletions packages/processor-javascript/README.md
@@ -1,54 +1,29 @@
# @putout/plugin-strict-mode [![NPM version][NPMIMGURL]][NPMURL] [![Dependency Status][DependencyStatusIMGURL]][DependencyStatusURL]
# @putout/processor-javascript [![NPM version][NPMIMGURL]][NPMURL] [![Dependency Status][DependencyStatusIMGURL]][DependencyStatusURL]

[NPMIMGURL]: https://img.shields.io/npm/v/@putout/plugin-strict-mode.svg?style=flat&longCache=true
[NPMURL]: https://npmjs.org/package/@putout/plugin-strict-mode "npm"
[NPMIMGURL]: https://img.shields.io/npm/v/@putout/processor-javascript.svg?style=flat&longCache=true
[NPMURL]: https://npmjs.org/package/@putout/processor-javascript "npm"

[DependencyStatusURL]: https://david-dm.org/coderaiser/putout?path=packages/plugin-strict-mode
[DependencyStatusIMGURL]: https://david-dm.org/coderaiser/putout.svg?path=packages/plugin-strict-mode
[DependencyStatusURL]: https://david-dm.org/coderaiser/putout?path=packages/processor-javascript
[DependencyStatusIMGURL]: https://david-dm.org/coderaiser/putout.svg?path=packages/processor-javascript

`putout` plugin adds ability to find and remove `useless types`.
`putout` processor adds support of javascript files.

## Install

```
npm i @putout/plugin-strict-mode -D
npm i @putout/processor-javascript -D
```

## Rule
## Usage

```json
{
"rules": {
"strict-mode/add": "on",
"strict-mode/remove": "on"
}
"processors": [
"javascript"
]
}
```

## ❌ Incorrect code example

```js
'strict mode';

import a from 'b';
```

```js
const a = require('b');
```

## ✅ Correct code Example

```js
import a from 'b';
```

```js
'strict mode';

const a = require('b');
```

## License

MIT
Expand Down
10 changes: 3 additions & 7 deletions packages/processor-javascript/package.json
Expand Up @@ -20,18 +20,13 @@
"coverage": "madrun coverage"
},
"dependencies": {
"remark-parse": "^9.0.0",
"remark-stringify": "^9.0.0",
"unified": "^9.2.0",
"unist-util-visit": "^2.0.3"
},
"keywords": [
"putout",
"putout-processor",
"markdown"
"javascript"
],
"devDependencies": {
"@putout/test": "^2.0.0",
"coveralls": "^3.0.0",
"eslint": "^7.0.0",
"eslint-plugin-node": "^11.0.0",
Expand All @@ -40,7 +35,8 @@
"madrun": "^7.0.0",
"nodemon": "^2.0.1",
"nyc": "^15.0.1",
"supertape": "^2.0.0"
"supertape": "^2.0.0",
"putout": "*"
},
"peerDependencies": {
"putout": ">=10"
Expand Down
2 changes: 0 additions & 2 deletions packages/processor-javascript/test/fixture/commonjs-fix.js

This file was deleted.

1 change: 0 additions & 1 deletion packages/processor-javascript/test/fixture/commonjs.js

This file was deleted.

1 change: 0 additions & 1 deletion packages/processor-javascript/test/fixture/esm-fix.js

This file was deleted.

3 changes: 0 additions & 3 deletions packages/processor-javascript/test/fixture/esm.js

This file was deleted.

2 changes: 2 additions & 0 deletions packages/processor-javascript/test/fixture/simple-fix.js
@@ -0,0 +1,2 @@
const a = 1;
log(a);
3 changes: 3 additions & 0 deletions packages/processor-javascript/test/fixture/simple.js
@@ -0,0 +1,3 @@
const a = 1;
const b = 2;
log(a);
43 changes: 43 additions & 0 deletions packages/processor-javascript/test/javascript.js
@@ -0,0 +1,43 @@
'use strict';

const {join} = require('path');
const {readFile} = require('fs').promises;

const test = require('supertape');
const {runProcessors} = require('@putout/engine-processor');
const processFile = require('putout/process-file');

test('putout: processor: javascript', async (t) => {
const inputName = join(__dirname, 'fixture', 'simple.js');
const outputName = join(__dirname, 'fixture', 'simple-fix.js');
const rawSource = await readFile(inputName, 'utf8');
const output = await readFile(outputName, 'utf8');
const options = {
dir: __dirname,
processors: [
'javascript',
],
plugins: [
'remove-unused-variables',
],
};
const index = 0;
const length = 1;

const process = processFile({
fix: true,
});

const {processedSource} = await runProcessors({
name: inputName,
process,
options,
rawSource,
index,
length,
});

t.equal(processedSource, output);
t.end();
});

16 changes: 0 additions & 16 deletions packages/processor-javascript/test/strict-mode.js

This file was deleted.

47 changes: 11 additions & 36 deletions packages/processor-markdown/README.md
@@ -1,54 +1,29 @@
# @putout/plugin-strict-mode [![NPM version][NPMIMGURL]][NPMURL] [![Dependency Status][DependencyStatusIMGURL]][DependencyStatusURL]
# @putout/processor-markdown [![NPM version][NPMIMGURL]][NPMURL] [![Dependency Status][DependencyStatusIMGURL]][DependencyStatusURL]

[NPMIMGURL]: https://img.shields.io/npm/v/@putout/plugin-strict-mode.svg?style=flat&longCache=true
[NPMURL]: https://npmjs.org/package/@putout/plugin-strict-mode "npm"
[NPMIMGURL]: https://img.shields.io/npm/v/@putout/processor-markdown.svg?style=flat&longCache=true
[NPMURL]: https://npmjs.org/package/@putout/processor-markdown "npm"

[DependencyStatusURL]: https://david-dm.org/coderaiser/putout?path=packages/plugin-strict-mode
[DependencyStatusIMGURL]: https://david-dm.org/coderaiser/putout.svg?path=packages/plugin-strict-mode
[DependencyStatusURL]: https://david-dm.org/coderaiser/putout?path=packages/processor-markdown
[DependencyStatusIMGURL]: https://david-dm.org/coderaiser/putout.svg?path=packages/processor-markdown

`putout` plugin adds ability to find and remove `useless types`.
`putout` processor adds support of markdown files.

## Install

```
npm i @putout/plugin-strict-mode -D
npm i @putout/processor-markdown -D
```

## Rule
## Usage

```json
{
"rules": {
"strict-mode/add": "on",
"strict-mode/remove": "on"
}
"processors": [
"markdown"
]
}
```

## ❌ Incorrect code example

```js
'strict mode';

import a from 'b';
```

```js
const a = require('b');
```

## ✅ Correct code Example

```js
import a from 'b';
```

```js
'strict mode';

const a = require('b');
```

## License

MIT
Expand Down
14 changes: 7 additions & 7 deletions packages/processor-markdown/lib/markdown.js
@@ -1,17 +1,17 @@
'use strict';

const visit = require('unist-util-visit');
const unified = require('unified')
const markdown = require('remark-parse')
const stringify = require('remark-stringify')
const unified = require('unified');
const markdown = require('remark-parse');
const stringify = require('remark-stringify');

module.exports.extensions = [
'md',
];

module.exports.preProcess = (rawSource) => {
const list = [];
const collect = (list) => (node, file) => {
const collect = (list) => (node) => {
visit(node, 'code', (node) => {
const {lang, value} = node;

Expand All @@ -22,7 +22,7 @@ module.exports.preProcess = (rawSource) => {
startLine: node.position.start.line,
source: value,
});
})
});
};

unified()
Expand All @@ -36,9 +36,9 @@ module.exports.preProcess = (rawSource) => {

module.exports.postProcess = (rawSource, list) => {
const newList = list.slice();
const apply = (list) => (node, file) => {
const apply = (list) => (node) => {
visit(node, 'code', (node) => {
const {lang, value} = node;
const {lang} = node;

if (!/^(js|javascript|typescript)$/.test(lang))
return;
Expand Down
1 change: 1 addition & 0 deletions packages/processor-markdown/package.json
Expand Up @@ -40,6 +40,7 @@
"madrun": "^7.0.0",
"nodemon": "^2.0.1",
"nyc": "^15.0.1",
"putout": "*",
"supertape": "^2.0.0"
},
"peerDependencies": {
Expand Down
2 changes: 0 additions & 2 deletions packages/processor-markdown/test/fixture/commonjs-fix.js

This file was deleted.

1 change: 0 additions & 1 deletion packages/processor-markdown/test/fixture/commonjs.js

This file was deleted.

1 change: 0 additions & 1 deletion packages/processor-markdown/test/fixture/esm-fix.js

This file was deleted.

3 changes: 0 additions & 3 deletions packages/processor-markdown/test/fixture/esm.js

This file was deleted.

4 changes: 4 additions & 0 deletions packages/processor-markdown/test/fixture/js-fix.md
@@ -0,0 +1,4 @@
```js
const a = 5;
log(a);
```
5 changes: 5 additions & 0 deletions packages/processor-markdown/test/fixture/js.md
@@ -0,0 +1,5 @@
```js
const a = 5;
const b = 3;
log(a);
```
8 changes: 8 additions & 0 deletions packages/processor-markdown/test/fixture/no-js-fix.md
@@ -0,0 +1,8 @@
```
hello
```

```js
const a = 5;
log(a);
```
9 changes: 9 additions & 0 deletions packages/processor-markdown/test/fixture/no-js.md
@@ -0,0 +1,9 @@
```
hello
```

```js
const a = 5;
const b = 3;
log(a);
```

0 comments on commit 5c5347c

Please sign in to comment.