Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/npm/cli.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorisaacs <i@izs.me>2021-02-09 02:16:01 +0300
committerGar <gar+gh@danger.computer>2021-02-11 21:42:15 +0300
commitef687f545b177d0496ce74faacf1bf738978355a (patch)
tree3402da4a69fc53c395d51e1121393b2101560c75 /test/lib/run-script.js
parente815cd4f79dafcc8fa1b8b2bec4c9b4acac89175 (diff)
fix(env): Do not clobber defined 'env' script
If an env script is already defined, run that instead of the default. PR-URL: https://github.com/npm/cli/pull/2655 Credit: @isaacs Close: #2655 Reviewed-by: @ljharb
Diffstat (limited to 'test/lib/run-script.js')
-rw-r--r--test/lib/run-script.js67
1 files changed, 65 insertions, 2 deletions
diff --git a/test/lib/run-script.js b/test/lib/run-script.js
index bad8a63c0..070f766b4 100644
--- a/test/lib/run-script.js
+++ b/test/lib/run-script.js
@@ -126,12 +126,14 @@ t.test('default env, start, and restart scripts', async t => {
scriptShell: undefined,
stdio: 'inherit',
stdioString: true,
- pkg: { name: 'x',
+ pkg: {
+ name: 'x',
version: '1.2.3',
_id: 'x@1.2.3',
scripts: {
env: 'env',
- } },
+ },
+ },
event: 'env',
},
])
@@ -185,6 +187,67 @@ t.test('default env, start, and restart scripts', async t => {
RUN_SCRIPTS.length = 0
})
+t.test('non-default env script', async t => {
+ npm.localPrefix = t.testdir({
+ 'package.json': JSON.stringify({
+ name: 'x',
+ version: '1.2.3',
+ scripts: {
+ env: 'hello',
+ },
+ }),
+ })
+
+ await runScript(['env'], er => {
+ if (er)
+ throw er
+
+ t.match(RUN_SCRIPTS, [
+ {
+ path: npm.localPrefix,
+ args: [],
+ scriptShell: undefined,
+ stdio: 'inherit',
+ stdioString: true,
+ pkg: {
+ name: 'x',
+ version: '1.2.3',
+ _id: 'x@1.2.3',
+ scripts: {
+ env: 'hello',
+ },
+ },
+ event: 'env',
+ },
+ ])
+ })
+ RUN_SCRIPTS.length = 0
+
+ await runScriptWin(['env'], er => {
+ if (er)
+ throw er
+
+ t.match(RUN_SCRIPTS, [
+ {
+ path: npm.localPrefix,
+ args: [],
+ scriptShell: undefined,
+ stdio: 'inherit',
+ stdioString: true,
+ pkg: { name: 'x',
+ version: '1.2.3',
+ _id: 'x@1.2.3',
+ scripts: {
+ env: 'hello',
+ },
+ },
+ event: 'env',
+ },
+ ])
+ })
+ RUN_SCRIPTS.length = 0
+})
+
t.test('try to run missing script', t => {
npm.localPrefix = t.testdir({
'package.json': JSON.stringify({