hunk.code_window:     "test:tap": "ts-node test",
       "pretest:e2e": "rimraf ../.tmp/ && pnpm-registry-mock prepare",
       "test:e2e": "preview --skip-prepublishOnly && npm-run-all -p -r pnpm-registry-mock test:tap",
       "test": "npm run tsc && npm run lint && npm test --prefix .scripts/self-installer && npm run test:e2e",
       "tsc": "rimraf lib && tsc",
       "prepublishOnly": "echo \"Publish is only allowed via 'npm run release'\" && exit 1",
       "release": "sh .scripts/release.sh",
       "version": "sh .scripts/version.sh"
  
hunk.labels: keep keep keep replace keep keep keep keep
hunk.after_edit:     "test": "npm run lint && npm run tsc && npm run test:e2e",
  
hunk.file_path: package.json
hunk.type: replace
file: import isexe = require('isexe')
  import fs = require('mz/fs')
  import {Test} from 'tape'
  import semver = require('semver')
  import {Stats} from 'fs'
  import isWindows = require('is-windows')
  
  const IS_WINDOWS = isWindows()
  
  export default async function isExecutable (t: Test, filePath: string) {
    if (IS_WINDOWS) {
      t.ok(isexe.sync(`${filePath}.cmd`), `${filePath} is executable`)
      return
    }
  
    const stat = await fs.stat(filePath)
    t.equal(stat.mode, parseInt('100755', 8), `${filePath} is executable`)
    t.ok(stat.isFile(), `${filePath} refers to a file`)
    return
  }
  