test(last-release): initial suite

This commit is contained in:
Stephan Bönnemann 2015-06-14 11:23:48 -07:00
parent 56238887d3
commit cce860ec03

View File

@ -0,0 +1,62 @@
const test = require('tap').test
const nock = require('nock')
const lastRelease = require('../../dist/lib/last-release.js')
const availableModule = {
'dist-tags': {
latest: '1.33.7'
},
versions: {
'1.33.7': {
gitHead: 'HEAD'
}
}
}
const registry = 'http://registry.npmjs.org'
const regMock = nock(registry)
.get('/available')
.reply(200, availableModule)
.get('/@scoped/available')
.reply(200, availableModule)
.get('/unavailable')
.reply(404, {})
test('last release from registry', (t) => {
t.test('get release from package name', (t) => {
lastRelease({
name: 'available'
}, {
registry
}, (err, release) => {
t.error(err)
t.is(release.version, '1.33.7', 'version')
t.is(release.gitHead, 'HEAD', 'gitHead')
})
})
t.test('get release from scoped package name', (t) => {
lastRelease({
name: '@scoped/available'
}, {
registry
}, (err, release) => {
t.error(err)
t.is(release.version, '1.33.7', 'version')
t.is(release.gitHead, 'HEAD', 'gitHead')
})
})
t.test('get nothing from not yet published package name', (t) => {
lastRelease({
name: 'unavailable'
}, {
registry
}, (err, release) => {
t.error(err)
t.is(release.version, undefined, 'no version')
regMock.done()
})
})
})