mirror of
https://github.com/verdaccio/verdaccio.git
synced 2024-11-08 23:25:51 +01:00
6a778e8c17
close #155, see reasons there This is a huge commit, so let me know if it will cause any trouble, I might consider reverting it if it's the case.
75 lines
2.1 KiB
JavaScript
75 lines
2.1 KiB
JavaScript
var assert = require('assert')
|
|
|
|
function readfile(x) {
|
|
return require('fs').readFileSync(__dirname + '/' + x)
|
|
}
|
|
|
|
module.exports = function() {
|
|
var server = process.server
|
|
var server2 = process.server2
|
|
|
|
it('testing anti-loop', function(cb) {
|
|
server2.get_package('testloop', function(res, body) {
|
|
assert.equal(res.statusCode, 404)
|
|
assert(~body.error.indexOf('no such package'))
|
|
cb()
|
|
})
|
|
})
|
|
|
|
;['fwd', /*'loop'*/].forEach(function(pkg) {
|
|
var prefix = pkg + ': '
|
|
pkg = 'test' + pkg
|
|
|
|
describe(pkg, function() {
|
|
before(function(cb) {
|
|
server.put_package(pkg, require('./lib/package')(pkg), function(res, body) {
|
|
assert.equal(res.statusCode, 201)
|
|
assert(~body.ok.indexOf('created new package'))
|
|
cb()
|
|
})
|
|
})
|
|
|
|
it(prefix+'creating new package', function(){})
|
|
|
|
describe(pkg, function() {
|
|
before(function(cb) {
|
|
server.put_version(pkg, '0.1.1', require('./lib/package')(pkg), function(res, body) {
|
|
assert.equal(res.statusCode, 201)
|
|
assert(~body.ok.indexOf('published'))
|
|
cb()
|
|
})
|
|
})
|
|
|
|
it(prefix+'uploading new package version', function(){})
|
|
|
|
it(prefix+'uploading incomplete tarball', function(cb) {
|
|
server.put_tarball_incomplete(pkg, pkg+'.bad', readfile('fixtures/binary'), 3000, function(res, body) {
|
|
cb()
|
|
})
|
|
})
|
|
|
|
describe('tarball', function() {
|
|
before(function(cb) {
|
|
server.put_tarball(pkg, pkg+'.file', readfile('fixtures/binary'), function(res, body) {
|
|
assert.equal(res.statusCode, 201)
|
|
assert(body.ok)
|
|
cb()
|
|
})
|
|
})
|
|
|
|
it(prefix+'uploading new tarball', function(){})
|
|
|
|
it(prefix+'downloading tarball from server1', function(cb) {
|
|
server.get_tarball(pkg, pkg+'.file', function(res, body) {
|
|
assert.equal(res.statusCode, 200)
|
|
assert.deepEqual(body, readfile('fixtures/binary').toString('utf8'))
|
|
cb()
|
|
})
|
|
})
|
|
})
|
|
})
|
|
})
|
|
})
|
|
}
|
|
|