From cec516ff5435f6c9f9f1b987e293bc30629596ec Mon Sep 17 00:00:00 2001 From: Xiaoyi Date: Thu, 31 Oct 2019 23:21:24 +0800 Subject: [PATCH] fix(replace): do not transform code if no values are given (#17) * replace: do not transfrom code is no values are given Fixes #16 * add test * npm test --- packages/replace/src/index.js | 1 + .../fixtures/form/replace-nothing/_config.js | 4 ++++ .../test/fixtures/form/replace-nothing/input.js | 1 + .../fixtures/form/replace-nothing/output.js | 1 + packages/replace/test/snapshots/form.js.md | 6 ++++++ packages/replace/test/snapshots/form.js.snap | Bin 406 -> 440 bytes 6 files changed, 13 insertions(+) create mode 100755 packages/replace/test/fixtures/form/replace-nothing/_config.js create mode 100755 packages/replace/test/fixtures/form/replace-nothing/input.js create mode 100755 packages/replace/test/fixtures/form/replace-nothing/output.js diff --git a/packages/replace/src/index.js b/packages/replace/src/index.js index d0a6ee82b..482ee9ddd 100755 --- a/packages/replace/src/index.js +++ b/packages/replace/src/index.js @@ -51,6 +51,7 @@ export default function replace(options = {}) { name: 'replace', transform(code, id) { + if (!keys.length) return null; if (!filter(id)) return null; const magicString = new MagicString(code); diff --git a/packages/replace/test/fixtures/form/replace-nothing/_config.js b/packages/replace/test/fixtures/form/replace-nothing/_config.js new file mode 100755 index 000000000..194ff3203 --- /dev/null +++ b/packages/replace/test/fixtures/form/replace-nothing/_config.js @@ -0,0 +1,4 @@ +module.exports = { + description: 'replaces nothing', + options: { } +}; diff --git a/packages/replace/test/fixtures/form/replace-nothing/input.js b/packages/replace/test/fixtures/form/replace-nothing/input.js new file mode 100755 index 000000000..ea6b2fff5 --- /dev/null +++ b/packages/replace/test/fixtures/form/replace-nothing/input.js @@ -0,0 +1 @@ +console.log('as-it'); // eslint-disable-line diff --git a/packages/replace/test/fixtures/form/replace-nothing/output.js b/packages/replace/test/fixtures/form/replace-nothing/output.js new file mode 100755 index 000000000..670fff8fd --- /dev/null +++ b/packages/replace/test/fixtures/form/replace-nothing/output.js @@ -0,0 +1 @@ +console.log('as-it'); diff --git a/packages/replace/test/snapshots/form.js.md b/packages/replace/test/snapshots/form.js.md index fa556b1fe..64b51bc83 100644 --- a/packages/replace/test/snapshots/form.js.md +++ b/packages/replace/test/snapshots/form.js.md @@ -52,3 +52,9 @@ Generated by [AVA](https://ava.li). `const one = 1; // eslint-disable-line␊ ␊ console.log(one);` + +## replace-nothing: replaces nothing + +> Snapshot 1 + + 'console.log(\'as-it\'); // eslint-disable-line' diff --git a/packages/replace/test/snapshots/form.js.snap b/packages/replace/test/snapshots/form.js.snap index 1e9b56468f2a6e5d6f717738b5e92ac14d40eb6e..1a9f47a386e4a9fed11805c8529cf5695a473245 100644 GIT binary patch literal 440 zcmV;p0Z0BpRzVDTmfgg(q00000000Bq z!@$76&TuPI{O=*dtZfWyY?kmiu5o2#00A$M-0`eA(?6(1B`##MR9}*}k`XLg1;qE> zu4zg6_~`68Rql=&{R zp@$JHx(kSzfi4FDMpgzvMw{gPyyEd01@7-?E7=<6$_7UyK literal 406 zcmV;H0crk0RzV1{-;;N`|3E^?SbfDx`X7r300000000A9 z#K6G7#&9cA{O=*dtZfWyY?kmiu5o2#00A!`W4wCw^35OTDE~A(-auNqC!AJInE!sR(ke; za2S`l(zJiC3K_woRzUn}b?SQI16{js?ObE0%Y2#D&!Ysrf23Q=BV0%`7o{mke{Gwjbf4#vPtSm zsU?XDWvNBQnfZANhI$5i2I^?)L-E+0lA4p5n^^+X4&)T)mlh?b<|Y=v*}h