npm/tap-snapshots/smoke-tests/index.js.test.cjs

785 lines
20 KiB
JavaScript
Raw Normal View History

2023-02-16 14:45:21 +08:00
/* IMPORTANT
* This snapshot file is auto-generated, but designed for humans.
* It should be checked into source control and tracked carefully.
* Re-generate by setting TAP_SNAPSHOT=1 and running tests.
* Make sure to inspect the output below. Do not ignore changes!
*/
'use strict'
exports[`smoke-tests/index.js TAP npm (no args) > should have expected no args output 1`] = `
npm <command>
Usage:
npm install install all the dependencies in your project
npm install <foo> add the <foo> dependency to your project
npm test run this project's tests
npm run <foo> run the script named <foo>
npm <command> -h quick help on <command>
npm -l display usage info for all commands
npm help <term> search for help on <term>
npm help npm more involved overview
All commands:
access, adduser, audit, bin, bugs, cache, ci, completion,
config, dedupe, deprecate, diff, dist-tag, docs, doctor,
edit, exec, explain, explore, find-dupes, fund, get, help,
hook, init, install, install-ci-test, install-test, link,
ll, login, logout, ls, org, outdated, owner, pack, ping,
pkg, prefix, profile, prune, publish, rebuild, repo,
restart, root, run-script, search, set, set-script,
shrinkwrap, star, stars, start, stop, team, test, token,
uninstall, unpublish, unstar, update, version, view, whoami
Specify configs in the ini-formatted file:
{CWD}/smoke-tests/tap-testdir-index/.npmrc
or on the command line via: npm <command> --key=value
More configuration info: npm help config
Configuration fields: npm help 7 config
npm {CWD}
`
exports[`smoke-tests/index.js TAP npm ci > should throw mismatch deps in lock file error 1`] = `
npm ERR! \`npm ci\` can only install packages when your package.json and package-lock.json or npm-shrinkwrap.json are in sync. Please update your lock file with \`npm install\` before continuing.
npm ERR!
npm ERR! Invalid: lock file's abbrev@1.0.4 does not satisfy abbrev@1.1.1
npm ERR!
npm ERR! A complete log of this run can be found in:
`
exports[`smoke-tests/index.js TAP npm diff > should have expected diff output 1`] = `
diff --git a/package.json b/package.json
index v1.0.4..v1.1.1 100644
--- a/package.json
+++ b/package.json
@@ -1,15 +1,21 @@
{
"name": "abbrev",
- "version": "1.0.4",
+ "version": "1.1.1",
"description": "Like ruby's abbrev module, but in js",
"author": "Isaac Z. Schlueter <i@izs.me>",
- "main": "./lib/abbrev.js",
+ "main": "abbrev.js",
"scripts": {
- "test": "node lib/abbrev.js"
+ "test": "tap test.js --100",
+ "preversion": "npm test",
+ "postversion": "npm publish",
+ "postpublish": "git push origin --all; git push origin --tags"
},
"repository": "http://github.com/isaacs/abbrev-js",
- "license": {
- "type": "MIT",
- "url": "https://github.com/isaacs/abbrev-js/raw/master/LICENSE"
- }
+ "license": "ISC",
+ "devDependencies": {
+ "tap": "^10.1"
+ },
+ "files": [
+ "abbrev.js"
+ ]
}
diff --git a/LICENSE b/LICENSE
index v1.0.4..v1.1.1 100644
--- a/LICENSE
+++ b/LICENSE
@@ -1,4 +1,27 @@
-Copyright 2009, 2010, 2011 Isaac Z. Schlueter.
+This software is dual-licensed under the ISC and MIT licenses.
+You may use this software under EITHER of the following licenses.
+
+----------
+
+The ISC License
+
+Copyright (c) Isaac Z. Schlueter and Contributors
+
+Permission to use, copy, modify, and/or distribute this software for any
+purpose with or without fee is hereby granted, provided that the above
+copyright notice and this permission notice appear in all copies.
+
+THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
+IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+
+----------
+
+Copyright Isaac Z. Schlueter and Contributors
All rights reserved.
Permission is hereby granted, free of charge, to any person
diff --git a/lib/abbrev.js b/lib/abbrev.js
deleted file mode 100644
index v1.0.4..v1.1.1
--- a/lib/abbrev.js
+++ b/lib/abbrev.js
@@ -1,111 +0,0 @@
-
-module.exports = exports = abbrev.abbrev = abbrev
-
-abbrev.monkeyPatch = monkeyPatch
-
-function monkeyPatch () {
- Object.defineProperty(Array.prototype, 'abbrev', {
- value: function () { return abbrev(this) },
- enumerable: false, configurable: true, writable: true
- })
-
- Object.defineProperty(Object.prototype, 'abbrev', {
- value: function () { return abbrev(Object.keys(this)) },
- enumerable: false, configurable: true, writable: true
- })
-}
-
-function abbrev (list) {
- if (arguments.length !== 1 || !Array.isArray(list)) {
- list = Array.prototype.slice.call(arguments, 0)
- }
- for (var i = 0, l = list.length, args = [] ; i < l ; i ++) {
- args[i] = typeof list[i] === "string" ? list[i] : String(list[i])
- }
-
- // sort them lexicographically, so that they're next to their nearest kin
- args = args.sort(lexSort)
-
- // walk through each, seeing how much it has in common with the next and previous
- var abbrevs = {}
- , prev = ""
- for (var i = 0, l = args.length ; i < l ; i ++) {
- var current = args[i]
- , next = args[i + 1] || ""
- , nextMatches = true
- , prevMatches = true
- if (current === next) continue
- for (var j = 0, cl = current.length ; j < cl ; j ++) {
- var curChar = current.charAt(j)
- nextMatches = nextMatches && curChar === next.charAt(j)
- prevMatches = prevMatches && curChar === prev.charAt(j)
- if (!nextMatches && !prevMatches) {
- j ++
- break
- }
- }
- prev = current
- if (j === cl) {
- abbrevs[current] = current
- continue
- }
- for (var a = current.substr(0, j) ; j <= cl ; j ++) {
- abbrevs[a] = current
- a += current.charAt(j)
- }
- }
- return abbrevs
-}
-
-function lexSort (a, b) {
- return a === b ? 0 : a > b ? 1 : -1
-}
-
-
-// tests
-if (module === require.main) {
-
-var assert = require("assert")
-var util = require("util")
-
-console.log("running tests")
-function test (list, expect) {
- var actual = abbrev(list)
- assert.deepEqual(actual, expect,
- "abbrev("+util.inspect(list)+") === " + util.inspect(expect) + "/n"+
- "actual: "+util.inspect(actual))
- actual = abbrev.apply(exports, list)
- assert.deepEqual(abbrev.apply(exports, list), expect,
- "abbrev("+list.map(JSON.stringify).join(",")+") === " + util.inspect(expect) + "/n"+
- "actual: "+util.inspect(actual))
-}
-
-test([ "ruby", "ruby", "rules", "rules", "rules" ],
-{ rub: 'ruby'
-, ruby: 'ruby'
-, rul: 'rules'
-, rule: 'rules'
-, rules: 'rules'
-})
-test(["fool", "foom", "pool", "pope"],
-{ fool: 'fool'
-, foom: 'foom'
-, poo: 'pool'
-, pool: 'pool'
-, pop: 'pope'
-, pope: 'pope'
-})
-test(["a", "ab", "abc", "abcd", "abcde", "acde"],
-{ a: 'a'
-, ab: 'ab'
-, abc: 'abc'
-, abcd: 'abcd'
-, abcde: 'abcde'
-, ac: 'acde'
-, acd: 'acde'
-, acde: 'acde'
-})
-
-console.log("pass")
-
-}
/ No newline at end of file
diff --git a/abbrev.js b/abbrev.js
new file mode 100644
index v1.0.4..v1.1.1
--- a/abbrev.js
+++ b/abbrev.js
@@ -0,0 +1,61 @@
+module.exports = exports = abbrev.abbrev = abbrev
+
+abbrev.monkeyPatch = monkeyPatch
+
+function monkeyPatch () {
+ Object.defineProperty(Array.prototype, 'abbrev', {
+ value: function () { return abbrev(this) },
+ enumerable: false, configurable: true, writable: true
+ })
+
+ Object.defineProperty(Object.prototype, 'abbrev', {
+ value: function () { return abbrev(Object.keys(this)) },
+ enumerable: false, configurable: true, writable: true
+ })
+}
+
+function abbrev (list) {
+ if (arguments.length !== 1 || !Array.isArray(list)) {
+ list = Array.prototype.slice.call(arguments, 0)
+ }
+ for (var i = 0, l = list.length, args = [] ; i < l ; i ++) {
+ args[i] = typeof list[i] === "string" ? list[i] : String(list[i])
+ }
+
+ // sort them lexicographically, so that they're next to their nearest kin
+ args = args.sort(lexSort)
+
+ // walk through each, seeing how much it has in common with the next and previous
+ var abbrevs = {}
+ , prev = ""
+ for (var i = 0, l = args.length ; i < l ; i ++) {
+ var current = args[i]
+ , next = args[i + 1] || ""
+ , nextMatches = true
+ , prevMatches = true
+ if (current === next) continue
+ for (var j = 0, cl = current.length ; j < cl ; j ++) {
+ var curChar = current.charAt(j)
+ nextMatches = nextMatches && curChar === next.charAt(j)
+ prevMatches = prevMatches && curChar === prev.charAt(j)
+ if (!nextMatches && !prevMatches) {
+ j ++
+ break
+ }
+ }
+ prev = current
+ if (j === cl) {
+ abbrevs[current] = current
+ continue
+ }
+ for (var a = current.substr(0, j) ; j <= cl ; j ++) {
+ abbrevs[a] = current
+ a += current.charAt(j)
+ }
+ }
+ return abbrevs
+}
+
+function lexSort (a, b) {
+ return a === b ? 0 : a > b ? 1 : -1
+}
`
exports[`smoke-tests/index.js TAP npm explain > should have expected explain output 1`] = `
abbrev@1.0.4
node_modules/abbrev
abbrev@"^1.0.4" from the root project
`
exports[`smoke-tests/index.js TAP npm fund > should have expected fund output 1`] = `
project@1.0.0
\`-- https://github.com/sponsors/isaacs
\`-- promise-all-reject-late@1.0.1
`
exports[`smoke-tests/index.js TAP npm init > should have successful npm init result 1`] = `
Wrote to {CWD}/smoke-tests/tap-testdir-index/project/package.json:
{
"name": "project",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo /"Error: no test specified/" && exit 1"
},
"keywords": [],
"author": "",
"license": "ISC"
}
`
exports[`smoke-tests/index.js TAP npm install dev dep > should have expected dev dep added lockfile result 1`] = `
{
"name": "project",
"version": "1.0.0",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "project",
"version": "1.0.0",
"license": "ISC",
"dependencies": {
"abbrev": "^1.0.4"
},
"devDependencies": {
"promise-all-reject-late": "^1.0.1"
}
},
"node_modules/abbrev": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.0.4.tgz",
"integrity": "sha1-vVWuXkE7oXIu5Mq6H26hBBSlns0="
},
"node_modules/promise-all-reject-late": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/promise-all-reject-late/-/promise-all-reject-late-1.0.1.tgz",
"integrity": "sha512-vuf0Lf0lOxyQREH7GDIOUMLS7kz+gs8i6B+Yi8dC68a2sychGrHTJYghMBD6k7eUcH0H5P73EckCA48xijWqXw==",
"dev": true,
"funding": {
"url": "https://github.com/sponsors/isaacs"
}
}
},
"dependencies": {
"abbrev": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.0.4.tgz",
"integrity": "sha1-vVWuXkE7oXIu5Mq6H26hBBSlns0="
},
"promise-all-reject-late": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/promise-all-reject-late/-/promise-all-reject-late-1.0.1.tgz",
"integrity": "sha512-vuf0Lf0lOxyQREH7GDIOUMLS7kz+gs8i6B+Yi8dC68a2sychGrHTJYghMBD6k7eUcH0H5P73EckCA48xijWqXw==",
"dev": true
}
}
}
`
exports[`smoke-tests/index.js TAP npm install dev dep > should have expected dev dep added package.json result 1`] = `
{
"name": "project",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo /"Error: no test specified/" && exit 1"
},
"keywords": [],
"author": "",
"license": "ISC",
"dependencies": {
"abbrev": "^1.0.4"
},
"devDependencies": {
"promise-all-reject-late": "^1.0.1"
}
}
`
exports[`smoke-tests/index.js TAP npm install dev dep > should have expected dev dep added reify output 1`] = `
added 1 package
1 package is looking for funding
run \`npm fund\` for details
`
exports[`smoke-tests/index.js TAP npm install prodDep@version > should have expected install reify output 1`] = `
added 1 package
`
exports[`smoke-tests/index.js TAP npm install prodDep@version > should have expected lockfile result 1`] = `
{
"name": "project",
"version": "1.0.0",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "project",
"version": "1.0.0",
"license": "ISC",
"dependencies": {
"abbrev": "^1.0.4"
}
},
"node_modules/abbrev": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.0.4.tgz",
"integrity": "sha1-vVWuXkE7oXIu5Mq6H26hBBSlns0="
}
},
"dependencies": {
"abbrev": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.0.4.tgz",
"integrity": "sha1-vVWuXkE7oXIu5Mq6H26hBBSlns0="
}
}
}
`
exports[`smoke-tests/index.js TAP npm install prodDep@version > should have expected package.json result 1`] = `
{
"name": "project",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo /"Error: no test specified/" && exit 1"
},
"keywords": [],
"author": "",
"license": "ISC",
"dependencies": {
"abbrev": "^1.0.4"
}
}
`
exports[`smoke-tests/index.js TAP npm ls > should have expected ls output 1`] = `
project@1.0.0 {CWD}/smoke-tests/tap-testdir-index/project
+-- abbrev@1.0.4
\`-- promise-all-reject-late@1.0.1
`
exports[`smoke-tests/index.js TAP npm outdated > should have expected outdated output 1`] = `
Package Current Wanted Latest Location Depended by
abbrev 1.0.4 1.1.1 1.1.1 node_modules/abbrev project
`
exports[`smoke-tests/index.js TAP npm pkg > should have expected npm pkg delete modified package.json result 1`] = `
{
"name": "project",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo /"Error: no test specified/" && exit 1",
"hello": "echo Hello"
},
"keywords": [],
"author": "",
"license": "ISC",
"dependencies": {
"abbrev": "^1.0.4"
}
}
`
exports[`smoke-tests/index.js TAP npm pkg > should have expected npm pkg set modified package.json result 1`] = `
{
"name": "project",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo /"Error: no test specified/" && exit 1",
"hello": "echo Hello"
},
"keywords": [],
"author": "",
"license": "ISC",
"dependencies": {
"abbrev": "^1.0.4"
},
"tap": {
"test-env": [
"LC_ALL=sk"
]
}
}
`
exports[`smoke-tests/index.js TAP npm pkg > should have expected pkg delete output 1`] = `
`
exports[`smoke-tests/index.js TAP npm pkg > should have expected pkg get output 1`] = `
"ISC"
`
exports[`smoke-tests/index.js TAP npm pkg > should have expected pkg set output 1`] = `
`
exports[`smoke-tests/index.js TAP npm pkg > should print package.json contents 1`] = `
{
"name": "project",
"version": "1.0.0",
"description": "",
"ma",
"scripts": {
"test": "echo /"Error: no test specified/" && exit 1",
"hello": "echo Hello"
},
"keywords": [],
"author": "",
"license": "ISC",
"dependencies": {
"abbrev": "^1.0.4"
},
"tap": {
"test-env": [
"LC_ALL=sk"
]
}
}
`
exports[`smoke-tests/index.js TAP npm prefix > should have expected prefix output 1`] = `
{CWD}/smoke-tests/tap-testdir-index/project
`
exports[`smoke-tests/index.js TAP npm run-script > should have expected run-script output 1`] = `
> project@1.0.0 hello
> echo Hello
Hello
`
exports[`smoke-tests/index.js TAP npm set-script > should have expected script added package.json result 1`] = `
{
"name": "project",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo /"Error: no test specified/" && exit 1",
"hello": "echo Hello"
},
"keywords": [],
"author": "",
"license": "ISC",
"dependencies": {
"abbrev": "^1.0.4"
},
"devDependencies": {
"promise-all-reject-late": "^1.0.1"
}
}
`
exports[`smoke-tests/index.js TAP npm set-script > should have expected set-script output 1`] = `
`
exports[`smoke-tests/index.js TAP npm uninstall > should have expected uninstall lockfile result 1`] = `
{
"name": "project",
"version": "1.0.0",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "project",
"version": "1.0.0",
"license": "ISC",
"dependencies": {
"abbrev": "^1.0.4"
}
},
"node_modules/abbrev": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz",
"integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q=="
}
},
"dependencies": {
"abbrev": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz",
"integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q=="
}
}
}
`
exports[`smoke-tests/index.js TAP npm uninstall > should have expected uninstall package.json result 1`] = `
{
"name": "project",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo /"Error: no test specified/" && exit 1",
"hello": "echo Hello"
},
"keywords": [],
"author": "",
"license": "ISC",
"dependencies": {
"abbrev": "^1.0.4"
}
}
`
exports[`smoke-tests/index.js TAP npm uninstall > should have expected uninstall reify output 1`] = `
removed 1 package
`
exports[`smoke-tests/index.js TAP npm update dep > should have expected update lockfile result 1`] = `
{
"name": "project",
"version": "1.0.0",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "project",
"version": "1.0.0",
"license": "ISC",
"dependencies": {
"abbrev": "^1.0.4"
},
"devDependencies": {
"promise-all-reject-late": "^1.0.1"
}
},
"node_modules/abbrev": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz",
"integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q=="
},
"node_modules/promise-all-reject-late": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/promise-all-reject-late/-/promise-all-reject-late-1.0.1.tgz",
"integrity": "sha512-vuf0Lf0lOxyQREH7GDIOUMLS7kz+gs8i6B+Yi8dC68a2sychGrHTJYghMBD6k7eUcH0H5P73EckCA48xijWqXw==",
"dev": true,
"funding": {
"url": "https://github.com/sponsors/isaacs"
}
}
},
"dependencies": {
"abbrev": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz",
"integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q=="
},
"promise-all-reject-late": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/promise-all-reject-late/-/promise-all-reject-late-1.0.1.tgz",
"integrity": "sha512-vuf0Lf0lOxyQREH7GDIOUMLS7kz+gs8i6B+Yi8dC68a2sychGrHTJYghMBD6k7eUcH0H5P73EckCA48xijWqXw==",
"dev": true
}
}
}
`
exports[`smoke-tests/index.js TAP npm update dep > should have expected update package.json result 1`] = `
{
"name": "project",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo /"Error: no test specified/" && exit 1",
"hello": "echo Hello"
},
"keywords": [],
"author": "",
"license": "ISC",
"dependencies": {
"abbrev": "^1.0.4"
},
"devDependencies": {
"promise-all-reject-late": "^1.0.1"
}
}
`
exports[`smoke-tests/index.js TAP npm update dep > should have expected update reify output 1`] = `
changed 1 package
1 package is looking for funding
run \`npm fund\` for details
`
exports[`smoke-tests/index.js TAP npm view > should have expected view output 1`] = `
abbrev@1.0.4 | MIT | deps: none | versions: 8
Like ruby's abbrev module, but in js
https://github.com/isaacs/abbrev-js#readme
dist
.tarball: https://registry.npmjs.org/abbrev/-/abbrev-1.0.4.tgz
.shasum: bd55ae5e413ba1722ee4caba1f6ea10414a59ecd
maintainers:
- nlf <quitlahok@gmail.com>
- ruyadorno <ruyadorno@hotmail.com>
- darcyclarke <darcy@darcyclarke.me>
- adam_baldwin <evilpacket@gmail.com>
- isaacs <i@izs.me>
dist-tags:
latest: 1.1.1
published over a year ago by isaacs <i@izs.me>
`