• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1'use strict'
2var test = require('tap').test
3var packageId = require('../../lib/utils/package-id.js')
4
5test('packageId', function (t) {
6  t.is(packageId({package: {_id: 'abc@123'}}), 'abc@123', 'basic')
7  t.is(packageId({_id: 'abc@123'}), 'abc@123', 'basic no tree')
8  t.is(packageId({package: {name: 'abc', version: '123'}}), 'abc@123', 'computed')
9  t.is(packageId({package: {_id: '@', name: 'abc', version: '123'}}), 'abc@123', 'computed, ignore invalid id')
10  t.is(packageId({package: {name: 'abc'}}), 'abc', 'no version')
11  t.is(packageId({package: {version: '123'}}), '!invalid#1@123', 'version, no name')
12  t.is(packageId({package: {version: '123'}, path: '/path/to/abc'}), 'abc@123', 'version path-name')
13  t.is(packageId({package: {version: '123'}, path: '/path/@to/abc'}), '@to/abc@123', 'version scoped-path-name')
14  t.is(packageId({path: '/path/to/abc'}), 'abc', 'path name, no version')
15  t.is(packageId({}), '!invalid#2', 'nothing')
16  t.done()
17})
18