You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

35 lines
985 B

// This test ensures that a few commands do the same
// thing when the cwd is where package.json is, and when
// the package.json is one level up.
var test = require("tap").test
var common = require("../common-tap.js")
var path = require("path")
var root = path.resolve(__dirname, "../..")
var lib = path.resolve(root, "lib")
var commands = ["run", "version"]
commands.forEach(function (cmd) {
// Should get the same stdout and stderr each time
var stdout, stderr
test(cmd + " in root", function (t) {
common.npm([cmd], {cwd: root}, function (er, code, so, se) {
if (er) throw er
t.notOk(code, "npm " + cmd + " exited with code 0")
stdout = so
stderr = se
t.end()
})
})
test(cmd + " in lib", function (t) {
common.npm([cmd], {cwd: lib}, function (er, code, so, se) {
if (er) throw er
t.notOk(code, "npm " + cmd + " exited with code 0")
t.equal(so, stdout)
t.equal(se, stderr)
t.end()
})
})
})