summaryrefslogtreecommitdiff
path: root/deps/npm/node_modules/update-notifier/node_modules/latest-version/node_modules/package-json/node_modules/registry-auth-token/test/auth-token.test.js
diff options
context:
space:
mode:
Diffstat (limited to 'deps/npm/node_modules/update-notifier/node_modules/latest-version/node_modules/package-json/node_modules/registry-auth-token/test/auth-token.test.js')
-rw-r--r--deps/npm/node_modules/update-notifier/node_modules/latest-version/node_modules/package-json/node_modules/registry-auth-token/test/auth-token.test.js48
1 files changed, 45 insertions, 3 deletions
diff --git a/deps/npm/node_modules/update-notifier/node_modules/latest-version/node_modules/package-json/node_modules/registry-auth-token/test/auth-token.test.js b/deps/npm/node_modules/update-notifier/node_modules/latest-version/node_modules/package-json/node_modules/registry-auth-token/test/auth-token.test.js
index 51cf6116e0..16146533c0 100644
--- a/deps/npm/node_modules/update-notifier/node_modules/latest-version/node_modules/package-json/node_modules/registry-auth-token/test/auth-token.test.js
+++ b/deps/npm/node_modules/update-notifier/node_modules/latest-version/node_modules/package-json/node_modules/registry-auth-token/test/auth-token.test.js
@@ -13,7 +13,7 @@ var base64 = require('../base64')
var decodeBase64 = base64.decodeBase64
var encodeBase64 = base64.encodeBase64
-/*eslint max-nested-callbacks: ["error", 4]*/
+/* eslint max-nested-callbacks: ["error", 4] */
describe('auth-token', function () {
afterEach(function (done) {
@@ -37,7 +37,6 @@ describe('auth-token', function () {
})
describe('bearer token', function () {
-
it('should return auth token if registry is defined', function (done) {
var content = [
'registry=http://registry.foobar.eu/',
@@ -52,6 +51,38 @@ describe('auth-token', function () {
})
})
+ it('should return auth token if it is defined in the legacy way via the `_auth` key', function (done) {
+ var content = [
+ '_auth=foobar',
+ 'registry=http://registry.foobar.eu/'
+ ].join('\n')
+
+ fs.writeFile(npmRcPath, content, function (err) {
+ var getAuthToken = requireUncached('../index')
+ assert(!err, err)
+ assert.deepEqual(getAuthToken(), {token: 'foobar', type: 'Bearer'})
+ done()
+ })
+ })
+
+ it('should use npmrc passed in', function (done) {
+ var content = [
+ 'registry=http://registry.foobar.eu/',
+ '//registry.foobar.eu/:_authToken=foobar', ''
+ ].join('\n')
+
+ fs.writeFile(npmRcPath, content, function (err) {
+ var getAuthToken = requireUncached('../index')
+ assert(!err, err)
+ const npmrc = {
+ 'registry': 'http://registry.foobar.eu/',
+ '//registry.foobar.eu/:_authToken': 'qar'
+ }
+ assert.deepEqual(getAuthToken({npmrc: npmrc}), {token: 'qar', type: 'Bearer'})
+ done()
+ })
+ })
+
it('should return auth token if registry url has port specified', function (done) {
var content = [
'registry=http://localhost:8770/',
@@ -147,6 +178,7 @@ describe('auth-token', function () {
assert.deepEqual(getAuthToken('https://registry.blah.org/foo/bar/baz', opts), {token: 'recurseExactlyOneLevel', type: 'Bearer'})
assert.deepEqual(getAuthToken('https://registry.blah.com/foo/bar/baz', opts), {token: 'whatev', type: 'Bearer'})
assert.deepEqual(getAuthToken('http://registry.blah.eu/what/ever', opts), {token: 'yep', type: 'Bearer'})
+ assert.deepEqual(getAuthToken('http://registry.blah.eu//what/ever', opts), undefined, 'does not hang')
assert.equal(getAuthToken('//some.registry', opts), undef)
done()
})
@@ -178,10 +210,20 @@ describe('auth-token', function () {
})
})
+ it('"nerf darts" registry urls', function (done, undef) {
+ fs.writeFile(npmRcPath, '//contoso.pkgs.visualstudio.com/_packaging/MyFeed/npm/:_authToken=heider', function (err) {
+ var getAuthToken = requireUncached('../index')
+ assert(!err, err)
+ assert.deepEqual(
+ getAuthToken('https://contoso.pkgs.visualstudio.com/_packaging/MyFeed/npm/registry'),
+ {token: 'heider', type: 'Bearer'}
+ )
+ done()
+ })
+ })
})
describe('basic token', function () {
-
it('should return undefined if password or username are missing', function (done, undef) {
var content = [
'registry=http://registry.foobar.eu/',