hunk.code_window:   const nodeModulesPath = path.join(ctx.root, 'node_modules')
     const client = new RegClient(adaptConfig(opts))
     const resolvedDependencies: ResolvedDependencies | undefined = installType !== 'general'
       ? undefined
       : getResolutions(
         packagesToInstall,
         ctx.shrinkwrap.dependencies
       )
     const installOpts = {
       root: ctx.root,
       storePath: ctx.storePath,
       localRegistry: opts.localRegistry,
       registry: ctx.shrinkwrap.registry,
  
hunk.labels: keep keep keep replace replace replace replace replace replace keep keep keep keep keep
hunk.after_edit:   const parts = R.partition(spec => newPkgs.indexOf(spec.name) === -1, packagesToInstall)
     const oldSpecs = parts[0]
     const newSpecs = parts[1]
     const resolvedDependencies: ResolvedDependencies = getResolutions(
       oldSpecs,
       ctx.shrinkwrap.dependencies
     )
  
hunk.file_path: src/api/install.ts
hunk.type: replace
file: import tape = require('tape')
  import promisifyTape from 'tape-promise'
  import {installPkgs} from '../../src'
  import {prepare, testDefaults} from '../utils'
  
  const test = promisifyTape(tape)
  
  test('fail if installed package does not support the current engine and engine-strict = true', async function (t) {
    const project = prepare(t)
  
    try {
      await installPkgs(['not-compatible-with-any-os'], testDefaults({
        engineStrict: true
      }))
      t.fail()
    } catch (err) {
      await project.hasNot('not-compatible-with-any-os')
      await project.storeHasNot('not-compatible-with-any-os', '1.0.0')
    }
  })
  
  test('do not fail if installed package does not support the current engine and engine-strict = false', async function (t) {
    const project = prepare(t)
  
    await installPkgs(['not-compatible-with-any-os'], testDefaults({
      engineStrict: false
    }))
  
    await project.has('not-compatible-with-any-os')
    await project.storeHas('not-compatible-with-any-os', '1.0.0')
  })
  
  test('do not fail if installed package requires the node version that was passed in and engine-strict = true', async function (t) {
    const project = prepare(t)
  
    await installPkgs(['for-legacy-node'], testDefaults({
      engineStrict: true,
      nodeVersion: '0.10.0'
    }))
  
    await project.has('for-legacy-node')
    await project.storeHas('for-legacy-node', '1.0.0')
  })
  