test(npm-info): support private modules

This commit is contained in:
Christoph Witzko 2015-05-26 20:58:04 +02:00
parent 25cb545ea3
commit d0032de737
4 changed files with 56 additions and 1 deletions

View File

@ -28,8 +28,9 @@
"lodash.defaults": "^3.0.0", "lodash.defaults": "^3.0.0",
"nano-uid": "^0.2.0", "nano-uid": "^0.2.0",
"nixt": "^0.4.1", "nixt": "^0.4.1",
"nock": "^2.2.0",
"sinopia": "^1.0.0", "sinopia": "^1.0.0",
"standard": "^3.2.1", "standard": "^3.11.1",
"tap-spec": "^3.0.0", "tap-spec": "^3.0.0",
"tape": "^4.0.0" "tape": "^4.0.0"
}, },

View File

@ -1,3 +1,4 @@
_auth=dGVzdDpmb28= _auth=dGVzdDpmb28=
email=test@example.com email=test@example.com
registry=http://127.0.0.1:4873/ registry=http://127.0.0.1:4873/
//registry.npmjs.org/:_authToken=testtoken

View File

@ -4,6 +4,7 @@ var test = require('tape')
var createModule = require('./lib/create-module') var createModule = require('./lib/create-module')
require('./tap/npm-info')(test)
require('./scenarios/custom-analyzer')(test, createModule) require('./scenarios/custom-analyzer')(test, createModule)
require('./scenarios/custom-verification')(test, createModule) require('./scenarios/custom-verification')(test, createModule)
require('./scenarios/ignore')(test, createModule) require('./scenarios/ignore')(test, createModule)

52
tests/tap/npm-info.js Normal file
View File

@ -0,0 +1,52 @@
'use strict'
var nock = require('nock')
var npmInfo = require('../../lib/npm-info.js')
var registry = 'http://registry.npmjs.org/'
var defaultModule = {
'dist-tags': {
latest: '1.0.0'
},
versions: {
'1.0.0': {
gitHead: 'HEAD'
}
}
}
process.env.npm_config_registry = registry
module.exports = function (test) {
test('npm-info', function (t) {
var regMock = nock(registry, {
reqheaders: {
'authorization': 'Bearer testtoken'
}
})
.get('/express')
.reply(200, defaultModule)
.get('/@user%2Fmodule')
.reply(200, defaultModule)
t.test('get unscoped module', function (t) {
t.plan(3)
npmInfo('express', function (err, info) {
t.error(err, 'error')
t.is(info.version, '1.0.0', 'version')
t.is(info.gitHead, 'HEAD', 'gitHead')
})
})
t.test('get scoped module', function (t) {
t.plan(3)
npmInfo('@user/module', function (err, info) {
t.error(err, 'error')
t.is(info.version, '1.0.0', 'version')
t.is(info.gitHead, 'HEAD', 'gitHead')
regMock.done()
})
})
})
}