diff options
Diffstat (limited to 'node_modules/npm-registry-client/test')
20 files changed, 580 insertions, 180 deletions
diff --git a/node_modules/npm-registry-client/test/00-setup.js b/node_modules/npm-registry-client/test/00-setup.js index 747768fb8..ae6d03ed3 100644 --- a/node_modules/npm-registry-client/test/00-setup.js +++ b/node_modules/npm-registry-client/test/00-setup.js @@ -1,10 +1,10 @@ -var tap = require('tap') -var rimraf = require('rimraf') +var tap = require("tap") +var rimraf = require("rimraf") -tap.test('setup', function (t) { - rimraf(__dirname + '/fixtures/cache', function (er) { +tap.test("setup", function (t) { + rimraf(__dirname + "/fixtures/cache", function (er) { if (er) throw er - t.pass('cache cleaned') + t.pass("cache cleaned") t.end() }) }) diff --git a/node_modules/npm-registry-client/test/adduser-new.js b/node_modules/npm-registry-client/test/adduser-new.js index 96dfc26d1..6cedf94d1 100644 --- a/node_modules/npm-registry-client/test/adduser-new.js +++ b/node_modules/npm-registry-client/test/adduser-new.js @@ -1,26 +1,21 @@ -var tap = require('tap') -var server = require('./fixtures/server.js') -var RC = require('../') -var client = new RC({ - cache: __dirname + '/fixtures/cache' - , registry: 'http://localhost:' + server.port }) +var tap = require("tap") -var userdata = -{ name: 'username', - email: 'i@izs.me', - _id: 'org.couchdb.user:username', - type: 'user', - roles: [], - date: '2012-06-07T04:11:21.591Z' } -, password = "password" -, username = "username" -, crypto = require("crypto") -, SD = require('string_decoder').StringDecoder -, decoder = new SD +var server = require("./lib/server.js") +var common = require("./lib/common.js") +var client = common.freshClient() -function sha (s) { - return crypto.createHash("sha1").update(s).digest("hex") -} +var password = "password" +, username = "username" +, email = "i@izs.me" +, userdata = { + name: username, + email: email, + _id: "org.couchdb.user:username", + type: "user", + roles: [], + date: "2012-06-07T04:11:21.591Z" } +, SD = require("string_decoder").StringDecoder +, decoder = new SD() tap.test("create new user account", function (t) { server.expect("/-/user/org.couchdb.user:username", function (req, res) { @@ -41,7 +36,7 @@ tap.test("create new user account", function (t) { }) }) - client.adduser(username, password, "i@izs.me", function (er, data, raw, res) { + client.adduser("http://localhost:1337/", username, password, email, function (er, data) { if (er) throw er t.deepEqual(data, { created: true }) t.end() diff --git a/node_modules/npm-registry-client/test/adduser-update.js b/node_modules/npm-registry-client/test/adduser-update.js index 370457147..551c9843e 100644 --- a/node_modules/npm-registry-client/test/adduser-update.js +++ b/node_modules/npm-registry-client/test/adduser-update.js @@ -1,29 +1,22 @@ -var tap = require('tap') -var server = require('./fixtures/server.js') -var RC = require('../') -var client = new RC({ - cache: __dirname + '/fixtures/cache' - , registry: 'http://localhost:' + server.port }) +var tap = require("tap") -var userdata = -{ name: 'username', - email: 'i@izs.me', - _id: 'org.couchdb.user:username', - type: 'user', - roles: [], - _rev: "1-15aac515ac515aac515aac515aac5125" -} +var server = require("./lib/server.js") +var common = require("./lib/common.js") +var client = common.freshClient() -, password = "password" +var password = "password" , username = "username" -, crypto = require("crypto") -, SD = require('string_decoder').StringDecoder -, decoder = new SD - +, email = "i@izs.me" +, userdata = { + name: username, + email: email, + _id: "org.couchdb.user:username", + type: "user", + roles: [], + date: "2012-06-07T04:11:21.591Z" } +, SD = require("string_decoder").StringDecoder +, decoder = new SD() -function sha (s) { - return crypto.createHash("sha1").update(s).digest("hex") -} tap.test("update a user acct", function (t) { server.expect("PUT", "/-/user/org.couchdb.user:username", function (req, res) { @@ -56,9 +49,7 @@ tap.test("update a user acct", function (t) { }) }) - - - client.adduser(username, password, "i@izs.me", function (er, data, raw, res) { + client.adduser("http://localhost:1337/", username, password, email, function (er, data) { if (er) throw er t.deepEqual(data, { created: true }) t.end() diff --git a/node_modules/npm-registry-client/test/basic.js b/node_modules/npm-registry-client/test/basic.js deleted file mode 100644 index 022466aee..000000000 --- a/node_modules/npm-registry-client/test/basic.js +++ /dev/null @@ -1,32 +0,0 @@ -var tap = require('tap') -var server = require('./fixtures/server.js') -var RC = require('../') -var rimraf = require("rimraf") -var client = new RC({ - cache: __dirname + '/fixtures/cache' - , registry: 'http://localhost:' + server.port }) -var us = require('./fixtures/underscore/1.3.3/cache.json') -var usroot = require("./fixtures/underscore/cache.json") - -tap.test("basic request", function (t) { - server.expect("/underscore/1.3.3", function (req, res) { - console.error('got a request') - res.json(us) - }) - - server.expect("/underscore", function (req, res) { - console.error('got a request') - res.json(usroot) - }) - - t.plan(2) - client.get("/underscore/1.3.3", function (er, data, raw, res) { - console.error("got response") - t.deepEqual(data, us) - }) - - client.get("/underscore", function (er, data, raw, res) { - console.error("got response") - t.deepEqual(data, usroot) - }) -}) diff --git a/node_modules/npm-registry-client/test/bugs.js b/node_modules/npm-registry-client/test/bugs.js new file mode 100644 index 000000000..092ec9f79 --- /dev/null +++ b/node_modules/npm-registry-client/test/bugs.js @@ -0,0 +1,33 @@ +var tap = require("tap") + +var server = require("./lib/server.js") +var common = require("./lib/common.js") +var client = common.freshClient({ + username : "username", + password : "password", + email : "ogd@aoaioxxysz.net", + _auth : new Buffer("username : password").toString("base64"), + "always-auth" : true +}) + +tap.test("get the URL for the bugs page on a package", function (t) { + server.expect("GET", "/sample/latest", function (req, res) { + t.equal(req.method, "GET") + + res.json({ + bugs : { + url : "http://github.com/example/sample/issues", + email : "sample@example.com" + } + }) + }) + + client.bugs("http://localhost:1337/sample", function (error, info) { + t.notOk(error, "no errors") + t.ok(info.url, "got the URL") + t.ok(info.email, "got the email address") + + t.end() + }) +}) + diff --git a/node_modules/npm-registry-client/test/deprecate.js b/node_modules/npm-registry-client/test/deprecate.js new file mode 100644 index 000000000..52c21b2f8 --- /dev/null +++ b/node_modules/npm-registry-client/test/deprecate.js @@ -0,0 +1,66 @@ +var tap = require("tap") + +var server = require("./lib/server.js") +var common = require("./lib/common.js") +var client = common.freshClient({ + username : "username", + password : "password", + email : "ogd@aoaioxxysz.net", + _auth : new Buffer("username : password").toString("base64"), + "always-auth" : true +}) + +var cache = require("./fixtures/underscore/cache.json") + +var VERSION = "1.3.2" +var MESSAGE = "uhhh" + +tap.test("deprecate a package", function (t) { + server.expect("GET", "/underscore?write=true", function (req, res) { + t.equal(req.method, "GET") + + res.json(cache) + }) + + server.expect("PUT", "/underscore", function (req, res) { + t.equal(req.method, "PUT") + + var b = "" + req.setEncoding("utf8") + req.on("data", function (d) { + b += d + }) + + req.on("end", function () { + var updated = JSON.parse(b) + + var undeprecated = [ + "1.0.3", "1.0.4", "1.1.0", "1.1.1", "1.1.2", "1.1.3", "1.1.4", "1.1.5", "1.1.6", + "1.1.7", "1.2.0", "1.2.1", "1.2.2", "1.2.3", "1.2.4", "1.3.0", "1.3.1", "1.3.3" + ] + for (var i = 0; i < undeprecated.length; i++) { + var current = undeprecated[i] + t.notEqual( + updated.versions[current].deprecated, + MESSAGE, + current + " not deprecated" + ) + } + + t.equal( + updated.versions[VERSION].deprecated, + MESSAGE, + VERSION + " deprecated" + ) + res.statusCode = 201 + res.json({deprecated:true}) + }) + }) + + client.deprecate("http://localhost:1337/underscore", VERSION, MESSAGE, function (error, data) { + t.notOk(error, "no errors") + t.ok(data.deprecated, "was deprecated") + + t.end() + }) +}) diff --git a/node_modules/npm-registry-client/test/get-all.js b/node_modules/npm-registry-client/test/get-all.js new file mode 100644 index 000000000..86978b267 --- /dev/null +++ b/node_modules/npm-registry-client/test/get-all.js @@ -0,0 +1,16 @@ +var tap = require("tap") + +var server = require("./lib/server.js") +var common = require("./lib/common.js") +var client = common.freshClient() + +tap.test("basic request", function (t) { + server.expect("/-/all", function (req, res) { + res.json([]) + }) + + client.get("http://localhost:1337/-/all", null, function (er) { + t.notOk(er, "no error") + t.end() + }) +}) diff --git a/node_modules/npm-registry-client/test/get-basic.js b/node_modules/npm-registry-client/test/get-basic.js new file mode 100644 index 000000000..10c48b0b8 --- /dev/null +++ b/node_modules/npm-registry-client/test/get-basic.js @@ -0,0 +1,27 @@ +var tap = require("tap") + +var server = require("./lib/server.js") +var common = require("./lib/common.js") +var client = common.freshClient() + +var us = require("./fixtures/underscore/1.3.3/cache.json") +var usroot = require("./fixtures/underscore/cache.json") + +tap.test("basic request", function (t) { + server.expect("/underscore/1.3.3", function (req, res) { + res.json(us) + }) + + server.expect("/underscore", function (req, res) { + res.json(usroot) + }) + + t.plan(2) + client.get("http://localhost:1337/underscore/1.3.3", null, function (er, data) { + t.deepEqual(data, us) + }) + + client.get("http://localhost:1337/underscore", null, function (er, data) { + t.deepEqual(data, usroot) + }) +}) diff --git a/node_modules/npm-registry-client/test/lib/common.js b/node_modules/npm-registry-client/test/lib/common.js new file mode 100644 index 000000000..f9048c094 --- /dev/null +++ b/node_modules/npm-registry-client/test/lib/common.js @@ -0,0 +1,17 @@ +var resolve = require("path").resolve +var server = require('./server.js') +var RC = require('../../') + +module.exports = { + freshClient : function freshClient(config) { + config = config || {} + config.cache = resolve(__dirname, '../fixtures/cache') + config.registry = 'http://localhost:' + server.port + + var client = new RC(config) + server.log = client.log + client.log.level = 'silent' + + return client + } +} diff --git a/node_modules/npm-registry-client/test/lib/server.js b/node_modules/npm-registry-client/test/lib/server.js new file mode 100644 index 000000000..03d3cd1fc --- /dev/null +++ b/node_modules/npm-registry-client/test/lib/server.js @@ -0,0 +1,58 @@ +// a fake registry server. + +var http = require('http') +var server = http.createServer(handler) +var port = server.port = process.env.PORT || 1337 +server.listen(port) + +module.exports = server + +server._expect = {} + +function handler (req, res) { + req.connection.setTimeout(1000) + + var u = '* ' + req.url + , mu = req.method + ' ' + req.url + + var k = server._expect[mu] ? mu : server._expect[u] ? u : null + if (!k) throw Error('unexpected request: ' + req.method + ' ' + req.url) + + var fn = server._expect[k].shift() + if (!fn) throw Error('unexpected request' + req.method + ' ' + req.url) + + + var remain = (Object.keys(server._expect).reduce(function (s, k) { + return s + server._expect[k].length + }, 0)) + if (remain === 0) server.close() + else this.log.info("fake-registry", "TEST SERVER: %d reqs remain", remain) + this.log.info("fake-registry", Object.keys(server._expect).map(function(k) { + return [k, server._expect[k].length] + }).reduce(function (acc, kv) { + acc[kv[0]] = kv[1] + return acc + }, {})) + + res.json = json + fn(req, res) +} + +function json (o) { + this.setHeader('content-type', 'application/json') + this.end(JSON.stringify(o)) +} + +// this log is meanto to be overridden +server.log = require("npmlog") + +server.expect = function (method, u, fn) { + if (typeof u === 'function') { + fn = u + u = method + method = '*' + } + u = method + ' ' + u + server._expect[u] = server._expect[u] || [] + server._expect[u].push(fn) +} diff --git a/node_modules/npm-registry-client/test/publish-again.js b/node_modules/npm-registry-client/test/publish-again.js index 011fbaf5a..af59980b3 100644 --- a/node_modules/npm-registry-client/test/publish-again.js +++ b/node_modules/npm-registry-client/test/publish-again.js @@ -1,24 +1,22 @@ -var tap = require('tap') -var server = require('./fixtures/server.js') -var RC = require('../') -var client = new RC( - { cache: __dirname + '/fixtures/cache' - , registry: 'http://localhost:' + server.port - , username: "username" - , password: "password" - , email: "i@izs.me" - , _auth: new Buffer("username:password").toString('base64') - , "always-auth": true - }) - +var tap = require("tap") var fs = require("fs") +var server = require("./lib/server.js") +var common = require("./lib/common.js") +var client = common.freshClient({ + username: "username", + password: "password", + email: "i@izs.me", + _auth: new Buffer("username:password").toString("base64"), + "always-auth": true +}) + tap.test("publish again", function (t) { var lastTime = null server.expect("/npm-registry-client", function (req, res) { t.equal(req.method, "PUT") var b = "" - req.setEncoding('utf8') + req.setEncoding("utf8") req.on("data", function (d) { b += d }) @@ -28,8 +26,8 @@ tap.test("publish again", function (t) { t.equal(o._id, "npm-registry-client") t.equal(o["dist-tags"].latest, pkg.version) t.has(o.versions[pkg.version], pkg) - t.same(o.maintainers, [ { name: 'username', email: 'i@izs.me' } ]) - var att = o._attachments[ pkg.name + '-' + pkg.version + '.tgz' ] + t.same(o.maintainers, [ { name: "username", email: "i@izs.me" } ]) + var att = o._attachments[ pkg.name + "-" + pkg.version + ".tgz" ] t.same(att.data, pd) res.statusCode = 409 res.json({reason: "must supply latest _rev to update existing package"}) @@ -54,7 +52,7 @@ tap.test("publish again", function (t) { t.ok(lastTime) var b = "" - req.setEncoding('utf8') + req.setEncoding("utf8") req.on("data", function (d) { b += d }) @@ -70,10 +68,10 @@ tap.test("publish again", function (t) { // not really a tarball, but doesn't matter - var tarball = require.resolve('../package.json') - var pd = fs.readFileSync(tarball, 'base64') - var pkg = require('../package.json') - client.publish(pkg, tarball, function (er, data, raw, res) { + var tarball = require.resolve("../package.json") + var pd = fs.readFileSync(tarball, "base64") + var pkg = require("../package.json") + client.publish("http://localhost:1337/", pkg, tarball, function (er, data) { if (er) throw er t.deepEqual(data, { created: true }) t.end() diff --git a/node_modules/npm-registry-client/test/publish.js b/node_modules/npm-registry-client/test/publish.js index 9dcfc3374..a6233905f 100644 --- a/node_modules/npm-registry-client/test/publish.js +++ b/node_modules/npm-registry-client/test/publish.js @@ -1,24 +1,23 @@ -var tap = require('tap') -var crypto = require('crypto') -var server = require('./fixtures/server.js') -var RC = require('../') -var client = new RC( - { cache: __dirname + '/fixtures/cache' - , registry: 'http://localhost:' + server.port - , username: "username" - , password: "password" - , email: "i@izs.me" - , _auth: new Buffer("username:password").toString('base64') - , "always-auth": true - }) - +var tap = require("tap") +var crypto = require("crypto") var fs = require("fs") +var server = require("./lib/server.js") +var common = require("./lib/common.js") +var client = common.freshClient({ + username: "username", + password: "password", + email: "i@izs.me", + _auth: new Buffer("username:password").toString("base64"), + "always-auth": true +}) + + tap.test("publish", function (t) { server.expect("/npm-registry-client", function (req, res) { t.equal(req.method, "PUT") var b = "" - req.setEncoding('utf8') + req.setEncoding("utf8") req.on("data", function (d) { b += d }) @@ -28,11 +27,11 @@ tap.test("publish", function (t) { t.equal(o._id, "npm-registry-client") t.equal(o["dist-tags"].latest, pkg.version) t.has(o.versions[pkg.version], pkg) - t.same(o.maintainers, [ { name: 'username', email: 'i@izs.me' } ]) + t.same(o.maintainers, [ { name: "username", email: "i@izs.me" } ]) t.same(o.maintainers, o.versions[pkg.version].maintainers) - var att = o._attachments[ pkg.name + '-' + pkg.version + '.tgz' ] + var att = o._attachments[ pkg.name + "-" + pkg.version + ".tgz" ] t.same(att.data, pd) - var hash = crypto.createHash('sha1').update(pd, 'base64').digest('hex') + var hash = crypto.createHash("sha1").update(pd, "base64").digest("hex") t.equal(o.versions[pkg.version].dist.shasum, hash) res.statusCode = 201 res.json({created:true}) @@ -40,10 +39,10 @@ tap.test("publish", function (t) { }) // not really a tarball, but doesn't matter - var tarball = require.resolve('../package.json') - var pd = fs.readFileSync(tarball, 'base64') - var pkg = require('../package.json') - client.publish(pkg, tarball, function (er, data, raw, res) { + var tarball = require.resolve("../package.json") + var pd = fs.readFileSync(tarball, "base64") + var pkg = require("../package.json") + client.publish("http://localhost:1337/", pkg, tarball, function (er, data) { if (er) throw er t.deepEqual(data, { created: true }) t.end() diff --git a/node_modules/npm-registry-client/test/request-gzip-content.js b/node_modules/npm-registry-client/test/request-gzip-content.js index 2c7dcae59..79c2e8dc0 100644 --- a/node_modules/npm-registry-client/test/request-gzip-content.js +++ b/node_modules/npm-registry-client/test/request-gzip-content.js @@ -1,45 +1,47 @@ -var zlib = require('zlib') -var tap = require('tap') -var server = require('./fixtures/server.js') -var RC = require('../') +var zlib = require("zlib") +var tap = require("tap") + +var server = require("./lib/server.js") +var common = require("./lib/common.js") +var client = common.freshClient({ + "fetch-retries" : 1, + "fetch-retry-mintimeout" : 10, + "fetch-retry-maxtimeout" : 100 +}) + +var TEST_URL = "http://localhost:1337/some-package-gzip/1.2.3" + var pkg = { - _id: 'some-package-gzip@1.2.3', - name: 'some-package-gzip', - version: '1.2.3' + _id: "some-package-gzip@1.2.3", + name: "some-package-gzip", + version: "1.2.3" } zlib.gzip(JSON.stringify(pkg), function (err, pkgGzip) { - var client = new RC({ - cache: __dirname + '/fixtures/cache' - , 'fetch-retries': 1 - , 'fetch-retry-mintimeout': 10 - , 'fetch-retry-maxtimeout': 100 - , registry: 'http://localhost:' + server.port }) - - tap.test('request gzip package content', function (t) { - server.expect('GET', '/some-package-gzip/1.2.3', function (req, res) { + tap.test("request gzip package content", function (t) { + server.expect("GET", "/some-package-gzip/1.2.3", function (req, res) { res.statusCode = 200 - res.setHeader('Content-Encoding', 'gzip'); - res.setHeader('Content-Type', 'application/json'); + res.setHeader("Content-Encoding", "gzip"); + res.setHeader("Content-Type", "application/json"); res.end(pkgGzip) }) - client.get('/some-package-gzip/1.2.3', function (er, data, raw, res) { + client.get(TEST_URL, null, function (er, data) { if (er) throw er t.deepEqual(data, pkg) t.end() }) }) - tap.test('request wrong gzip package content', function (t) { - server.expect('GET', '/some-package-gzip-error/1.2.3', function (req, res) { + tap.test("request wrong gzip package content", function (t) { + server.expect("GET", "/some-package-gzip-error/1.2.3", function (req, res) { res.statusCode = 200 - res.setHeader('Content-Encoding', 'gzip') - res.setHeader('Content-Type', 'application/json') - res.end(new Buffer('wrong gzip content')) + res.setHeader("Content-Encoding", "gzip") + res.setHeader("Content-Type", "application/json") + res.end(new Buffer("wrong gzip content")) }) - client.get('/some-package-gzip-error/1.2.3', function (er, data, raw, res) { + client.get(TEST_URL, null, function (er) { t.ok(er) t.end() }) diff --git a/node_modules/npm-registry-client/test/retries.js b/node_modules/npm-registry-client/test/retries.js index 8f0e63f72..f30f68080 100644 --- a/node_modules/npm-registry-client/test/retries.js +++ b/node_modules/npm-registry-client/test/retries.js @@ -1,44 +1,47 @@ -var tap = require('tap') -var server = require('./fixtures/server.js') -var RC = require('../') -var pkg = { _id: 'some-package@1.2.3', - name: 'some-package', - version: '1.2.3' } -var client = new RC({ - 'fetch-retries': 6 - , 'fetch-retry-mintimeout': 10 - , 'fetch-retry-maxtimeout': 100 - , cache: __dirname + '/fixtures/cache' - , registry: 'http://localhost:' + server.port }) +var tap = require("tap") -tap.test('create new user account', function (t) { +var server = require("./lib/server.js") +var common = require("./lib/common.js") +var client = common.freshClient({ + "fetch-retries": 6, + "fetch-retry-mintimeout": 10, + "fetch-retry-maxtimeout": 100 +}) + +var pkg = { + _id : "some-package@1.2.3", + name : "some-package", + version : "1.2.3" +} + +tap.test("create new user account", function (t) { // first time, return a 408 - server.expect('GET', '/some-package/1.2.3', function (req, res) { + server.expect("GET", "/some-package/1.2.3", function (req, res) { res.statusCode = 408 - res.end('Timeout') + res.end("Timeout") }) // then, slam the door in their face - server.expect('GET', '/some-package/1.2.3', function (req, res) { + server.expect("GET", "/some-package/1.2.3", function (req, res) { res.destroy() }) // then, blame someone else - server.expect('GET', '/some-package/1.2.3', function (req, res) { + server.expect("GET", "/some-package/1.2.3", function (req, res) { res.statusCode = 502 - res.end('Gateway Timeout') + res.end("Gateway Timeout") }) // 'No one's home right now, come back later' - server.expect('GET', '/some-package/1.2.3', function (req, res) { + server.expect("GET", "/some-package/1.2.3", function (req, res) { res.statusCode = 503 - res.setHeader('retry-after', '10') - res.end('Come back later') + res.setHeader("retry-after", "10") + res.end("Come back later") }) // finally, you may enter. - server.expect('GET', '/some-package/1.2.3', function (req, res) { + server.expect("GET", "/some-package/1.2.3", function (req, res) { res.statusCode = 200 res.json(pkg) }) - client.get('/some-package/1.2.3', function (er, data, raw, res) { + client.get("http://localhost:1337/some-package/1.2.3", null, function (er, data) { if (er) throw er t.deepEqual(data, pkg) t.end() diff --git a/node_modules/npm-registry-client/test/star.js b/node_modules/npm-registry-client/test/star.js new file mode 100644 index 000000000..3e140aae8 --- /dev/null +++ b/node_modules/npm-registry-client/test/star.js @@ -0,0 +1,60 @@ +var tap = require("tap") + +var server = require("./lib/server.js") +var common = require("./lib/common.js") +var client = common.freshClient({ + username : "othiym23", + password : "password", + email : "ogd@aoaioxxysz.net", + _auth : new Buffer("username : password").toString("base64"), + "always-auth" : true +}) + +var cache = require("./fixtures/underscore/cache.json") + +var DEP_USER = "othiym23" + +tap.test("star a package", function (t) { + server.expect("GET", "/underscore?write=true", function (req, res) { + t.equal(req.method, "GET") + + res.json(cache) + }) + + server.expect("PUT", "/underscore", function (req, res) { + t.equal(req.method, "PUT") + + var b = "" + req.setEncoding("utf8") + req.on("data", function (d) { + b += d + }) + + req.on("end", function () { + var updated = JSON.parse(b) + + var already = [ + "vesln", "mvolkmann", "lancehunt", "mikl", "linus", "vasc", "bat", + "dmalam", "mbrevoort", "danielr", "rsimoes", "thlorenz" + ] + for (var i = 0; i < already.length; i++) { + var current = already[i] + t.ok( + updated.users[current], + current + " still likes this package" + ) + } + t.ok(updated.users[DEP_USER], "user is in the starred list") + + res.statusCode = 201 + res.json({starred:true}) + }) + }) + + client.star("http://localhost:1337/underscore", true, function (error, data) { + t.notOk(error, "no errors") + t.ok(data.starred, "was starred") + + t.end() + }) +}) diff --git a/node_modules/npm-registry-client/test/stars.js b/node_modules/npm-registry-client/test/stars.js new file mode 100644 index 000000000..64835c02a --- /dev/null +++ b/node_modules/npm-registry-client/test/stars.js @@ -0,0 +1,32 @@ +var tap = require("tap") + +var server = require("./lib/server.js") +var common = require("./lib/common.js") +var client = common.freshClient({ + username : "username", + password : "password", + email : "ogd@aoaioxxysz.net", + _auth : new Buffer("username : password").toString("base64"), + "always-auth" : true +}) + +var users = [ + "benjamincoe", + "seldo", + "ceejbot" +] + +tap.test("get the URL for the bugs page on a package", function (t) { + server.expect("GET", "/-/_view/starredByUser?key=%22sample%22", function (req, res) { + t.equal(req.method, "GET") + + res.json(users) + }) + + client.stars("http://localhost:1337/", "sample", function (error, info) { + t.notOk(error, "no errors") + t.deepEqual(info, users, "got the list of users") + + t.end() + }) +}) diff --git a/node_modules/npm-registry-client/test/tag.js b/node_modules/npm-registry-client/test/tag.js new file mode 100644 index 000000000..b8b8e1927 --- /dev/null +++ b/node_modules/npm-registry-client/test/tag.js @@ -0,0 +1,39 @@ +var tap = require("tap") + +var server = require("./lib/server.js") +var common = require("./lib/common.js") +var client = common.freshClient({ + username : "username", + password : "password", + email : "ogd@aoaioxxysz.net", + _auth : new Buffer("username : password").toString("base64"), + "always-auth" : true +}) + +tap.test("tag a package", function (t) { + server.expect("PUT", "/underscore/not-lodash", function (req, res) { + t.equal(req.method, "PUT") + + var b = "" + req.setEncoding("utf8") + req.on("data", function (d) { + b += d + }) + + req.on("end", function () { + var updated = JSON.parse(b) + + t.deepEqual(updated, {"1.3.2":{}}) + + res.statusCode = 201 + res.json({tagged:true}) + }) + }) + + client.tag("http://localhost:1337/underscore", {"1.3.2":{}}, "not-lodash", function (error, data) { + t.notOk(error, "no errors") + t.ok(data.tagged, "was tagged") + + t.end() + }) +}) diff --git a/node_modules/npm-registry-client/test/unpublish.js b/node_modules/npm-registry-client/test/unpublish.js new file mode 100644 index 000000000..e8a209306 --- /dev/null +++ b/node_modules/npm-registry-client/test/unpublish.js @@ -0,0 +1,59 @@ +var tap = require("tap") + +var server = require("./lib/server.js") +var common = require("./lib/common.js") +var client = common.freshClient({ + username : "othiym23", + password : "password", + email : "ogd@aoaioxxysz.net", + _auth : new Buffer("username : password").toString("base64"), + "always-auth" : true +}) + +var cache = require("./fixtures/underscore/cache.json") + +var REV = "/-rev/72-47f2986bfd8e8b55068b204588bbf484" +var VERSION = "1.3.2" + +tap.test("unpublish a package", function (t) { + server.expect("GET", "/underscore?write=true", function (req, res) { + t.equal(req.method, "GET") + + res.json(cache) + }) + + server.expect("PUT", "/underscore" + REV, function (req, res) { + t.equal(req.method, "PUT") + + var b = "" + req.setEncoding("utf-8") + req.on("data", function (d) { + b += d + }) + + req.on("end", function () { + var updated = JSON.parse(b) + t.notOk(updated.versions[VERSION]) + }) + + res.json(cache) + }) + + server.expect("GET", "/underscore", function (req, res) { + t.equal(req.method, "GET") + + res.json(cache) + }) + + server.expect("DELETE", "/underscore/-/underscore-1.3.2.tgz" + REV, function (req, res) { + t.equal(req.method, "DELETE") + + res.json({unpublished:true}) + }) + + client.unpublish("http://localhost:1337/underscore", VERSION, function (error) { + t.notOk(error, "no errors") + + t.end() + }) +}) diff --git a/node_modules/npm-registry-client/test/upload.js b/node_modules/npm-registry-client/test/upload.js new file mode 100644 index 000000000..8884db8f3 --- /dev/null +++ b/node_modules/npm-registry-client/test/upload.js @@ -0,0 +1,37 @@ +var tap = require("tap") +var Readable = require("stream").Readable +var inherits = require("util").inherits + +var common = require("./lib/common.js") +var server = require("./lib/server.js") + +var cache = require("./fixtures/underscore/cache.json") + +var client = common.freshClient({ + username : "othiym23", + password : "password", + email : "ogd@aoaioxxysz.net", + _auth : new Buffer("username : password").toString("base64"), + "always-auth" : true +}) + +function OneA() { + Readable.call(this) + this.push("A") + this.push(null) +} +inherits(OneA, Readable) + +tap.test("unpublish a package", function (t) { + server.expect("PUT", "/underscore", function (req, res) { + t.equal(req.method, "PUT") + + res.json(cache) + }) + + client.upload("http://localhost:1337/underscore", new OneA(), "daedabeefa", true, function (error) { + t.notOk(error, "no errors") + + t.end() + }) +}) diff --git a/node_modules/npm-registry-client/test/zz-cleanup.js b/node_modules/npm-registry-client/test/zz-cleanup.js index 35253c7ac..f030b11ee 100644 --- a/node_modules/npm-registry-client/test/zz-cleanup.js +++ b/node_modules/npm-registry-client/test/zz-cleanup.js @@ -1,10 +1,10 @@ -var tap = require('tap') -var rimraf = require('rimraf') +var tap = require("tap") +var rimraf = require("rimraf") -tap.test('teardown', function (t) { - rimraf(__dirname + '/fixtures/cache', function (er) { +tap.test("teardown", function (t) { + rimraf(__dirname + "/fixtures/cache", function (er) { if (er) throw er - t.pass('cache cleaned') + t.pass("cache cleaned") t.end() }) }) |