Files
pnpm/packages/supi/test/packageImportMethods.ts
Zoltan Kochan 066910b6dc fix(shared-workspace-shrinkwrap): recursive removal
* 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
2018-12-03 01:18:54 +02:00

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' })
})