test(last-release): initial suite
This commit is contained in:
		
							parent
							
								
									56238887d3
								
							
						
					
					
						commit
						cce860ec03
					
				
							
								
								
									
										62
									
								
								test/specs/last-release.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										62
									
								
								test/specs/last-release.js
									
									
									
									
									
										Normal 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() | ||||||
|  |     }) | ||||||
|  |   }) | ||||||
|  | }) | ||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user