You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

89 lines
2.8 KiB

var test = require("tap").test
var npm = require("../../")
var mapRegistry = require("../../lib/utils/map-to-registry.js")
var creds = {
"//registry.npmjs.org/:username" : "u",
"//registry.npmjs.org/:_password" : new Buffer("p").toString("base64"),
"//registry.npmjs.org/:email" : "e"
}
test("setup", function (t) {
npm.load(creds, function (err) {
t.ifError(err)
t.end()
})
})
test("mapRegistryToURI", function (t) {
t.plan(16)
mapRegistry("basic", npm.config, function (er, uri, auth, registry) {
t.ifError(er, "mapRegistryToURI worked")
t.equal(uri, "https://registry.npmjs.org/basic")
t.deepEqual(auth, {
scope : "//registry.npmjs.org/",
token : undefined,
username : "u",
password : "p",
email : "e",
auth : "dTpw",
alwaysAuth : false
})
t.equal(registry, "https://registry.npmjs.org/")
})
npm.config.set("scope", "test")
npm.config.set("@test:registry", "http://reg.npm/design/-/rewrite/")
npm.config.set("//reg.npm/design/-/rewrite/:_authToken", "a-token")
mapRegistry("simple", npm.config, function (er, uri, auth, registry) {
t.ifError(er, "mapRegistryToURI worked")
t.equal(uri, "http://reg.npm/design/-/rewrite/simple")
t.deepEqual(auth, {
scope : "//reg.npm/design/-/rewrite/",
token : "a-token",
username : undefined,
password : undefined,
email : undefined,
auth : undefined,
alwaysAuth : undefined
})
t.equal(registry, "http://reg.npm/design/-/rewrite/")
})
npm.config.set("scope", "")
npm.config.set("@test2:registry", "http://reg.npm/-/rewrite/")
npm.config.set("//reg.npm/-/rewrite/:_authToken", "b-token")
mapRegistry("@test2/easy", npm.config, function (er, uri, auth, registry) {
t.ifError(er, "mapRegistryToURI worked")
t.equal(uri, "http://reg.npm/-/rewrite/@test2%2feasy")
t.deepEqual(auth, {
scope : "//reg.npm/-/rewrite/",
token : "b-token",
username : undefined,
password : undefined,
email : undefined,
auth : undefined,
alwaysAuth : undefined
})
t.equal(registry, "http://reg.npm/-/rewrite/")
})
npm.config.set("scope", "test")
npm.config.set("@test3:registry", "http://reg.npm/design/-/rewrite/relative")
npm.config.set("//reg.npm/design/-/rewrite/:_authToken", "c-token")
mapRegistry("@test3/basic", npm.config, function (er, uri, auth, registry) {
t.ifError(er, "mapRegistryToURI worked")
t.equal(uri, "http://reg.npm/design/-/rewrite/relative/@test3%2fbasic")
t.deepEqual(auth, {
scope : "//reg.npm/design/-/rewrite/",
token : "c-token",
username : undefined,
password : undefined,
email : undefined,
auth : undefined,
alwaysAuth : undefined
})
t.equal(registry, "http://reg.npm/design/-/rewrite/relative/")
})
})