2014-11-12 06:14:37 -05:00
|
|
|
var assert = require('assert')
|
|
|
|
var validate = require('../../lib/utils').validate_name
|
2013-12-15 15:54:50 -05:00
|
|
|
|
2013-12-19 10:11:54 -05:00
|
|
|
describe('Validate', function() {
|
2014-11-12 06:14:37 -05:00
|
|
|
it('good ones', function() {
|
|
|
|
assert( validate('sinopia') )
|
|
|
|
assert( validate('some.weird.package-zzz') )
|
|
|
|
assert( validate('old-package@0.1.2.tgz') )
|
|
|
|
})
|
2013-12-15 15:54:50 -05:00
|
|
|
|
2014-11-12 06:14:37 -05:00
|
|
|
it('uppercase', function() {
|
|
|
|
assert( validate('EVE') )
|
|
|
|
assert( validate('JSONStream') )
|
|
|
|
})
|
2013-12-15 15:54:50 -05:00
|
|
|
|
2014-11-12 06:14:37 -05:00
|
|
|
it('no package.json', function() {
|
|
|
|
assert( !validate('package.json') )
|
|
|
|
})
|
2013-12-15 15:54:50 -05:00
|
|
|
|
2014-11-12 06:14:37 -05:00
|
|
|
it('no path seps', function() {
|
|
|
|
assert( !validate('some/thing') )
|
|
|
|
assert( !validate('some\\thing') )
|
|
|
|
})
|
2015-03-28 13:25:53 -05:00
|
|
|
|
2014-11-12 06:14:37 -05:00
|
|
|
it('no hidden', function() {
|
|
|
|
assert( !validate('.bin') )
|
|
|
|
})
|
2015-03-28 13:25:53 -05:00
|
|
|
|
2014-11-12 06:14:37 -05:00
|
|
|
it('no reserved', function() {
|
|
|
|
assert( !validate('favicon.ico') )
|
|
|
|
assert( !validate('node_modules') )
|
|
|
|
assert( !validate('__proto__') )
|
|
|
|
})
|
2013-12-15 15:54:50 -05:00
|
|
|
|
2014-11-12 06:14:37 -05:00
|
|
|
it('other', function() {
|
|
|
|
assert( !validate('pk g') )
|
|
|
|
assert( !validate('pk\tg') )
|
|
|
|
assert( !validate('pk%20g') )
|
|
|
|
assert( !validate('pk+g') )
|
|
|
|
assert( !validate('pk:g') )
|
|
|
|
})
|
2013-12-19 10:11:54 -05:00
|
|
|
})
|