mirror of
https://github.com/pnpm/pnpm.git
synced 2026-03-24 01:51:41 -04:00
* feat(supi): merge installPkgs() with install() * fix(shared-workspace-shrinkwrap): recursive removal ref #1525 * refactor: recursive operations with shared shrinkwrap * refactor(supi): revert mixing install() with uninstall() * refactor: create mutateModules() * fix: uninstalling a direct peer from a shared shrinkwrap * refactor: rename mutations * refactor(resolve-dependencies): opts.updateDepth BREAKING CHANGE: opts.depth and opts.update params deprecated opts.updateDepth added * refactor: pass pinnedVersions to mutateModules() * refactor: rename properties in DependenciesMutation * refactor(supi): remove unlink() and unlinkPkgs() PR #1528
29 lines
1.1 KiB
TypeScript
29 lines
1.1 KiB
TypeScript
import prepare from '@pnpm/prepare'
|
|
import { addDependenciesToPackage } from 'supi'
|
|
import tape = require('tape')
|
|
import promisifyTape from 'tape-promise'
|
|
import { testDefaults } from './utils'
|
|
|
|
const test = promisifyTape(tape)
|
|
|
|
test('packageImportMethod can be set to copy', async (t: tape.Test) => {
|
|
const project = prepare(t)
|
|
|
|
await addDependenciesToPackage(['is-negative'], await testDefaults({}, {}, {}, { packageImportMethod: 'copy' }))
|
|
|
|
const m = project.requireModule('is-negative')
|
|
t.ok(m, 'is-negative is available with packageImportMethod = copy')
|
|
})
|
|
|
|
test('copy does not fail on package that self-requires itself', async (t: tape.Test) => {
|
|
const project = prepare(t)
|
|
|
|
await addDependenciesToPackage(['requires-itself'], await testDefaults({}, {}, {}, { packageImportMethod: 'copy' }))
|
|
|
|
const m = project.requireModule('requires-itself/package.json')
|
|
t.ok(m, 'requires-itself is available with packageImportMethod = copy')
|
|
|
|
const shr = await project.loadShrinkwrap()
|
|
t.deepEqual(shr.packages['/requires-itself/1.0.0'].dependencies, { 'is-positive': '1.0.0' })
|
|
})
|