mirror of https://gitee.com/openkylin/npm.git
25 lines
769 B
JavaScript
25 lines
769 B
JavaScript
const t = require('tap')
|
|
const index = require.resolve('../index.js')
|
|
const packageIndex = require.resolve('../')
|
|
|
|
t.equal(index, packageIndex, 'index is main package require() export')
|
|
t.throws(() => require(index), {
|
|
message: 'The programmatic API was removed in npm v8.0.0',
|
|
})
|
|
|
|
t.test('loading as main module will load the cli', t => {
|
|
const cwd = t.testdir()
|
|
const { spawn } = require('child_process')
|
|
const LS = require('../lib/commands/ls.js')
|
|
const ls = new LS({})
|
|
const p = spawn(process.execPath, [index, 'ls', '-h', '--cache', cwd])
|
|
const out = []
|
|
p.stdout.on('data', c => out.push(c))
|
|
p.on('close', (code, signal) => {
|
|
t.equal(code, 0)
|
|
t.equal(signal, null)
|
|
t.match(Buffer.concat(out).toString(), ls.usage)
|
|
t.end()
|
|
})
|
|
})
|