test.js 860 B

12345678910111213141516171819202122
  1. 'use strict'
  2. var test = require('tape')
  3. var parse = require('./')
  4. var paths = {
  5. '/path/to/node_modules/@scope/name/index.js': { name: '@scope/name', basedir: '/path/to/node_modules/@scope/name', path: 'index.js' },
  6. '/path/to/node_modules/name/index.js': { name: 'name', basedir: '/path/to/node_modules/name', path: 'index.js' },
  7. '/path/to/node_modules/name/sub/index.js': { name: 'name', basedir: '/path/to/node_modules/name', path: 'sub/index.js' },
  8. '/path/to/node_modules/invalid/node_modules/name/index.js': { name: 'name', basedir: '/path/to/node_modules/invalid/node_modules/name', path: 'index.js' },
  9. '/path/to/node_modules': undefined,
  10. '/path/to/no/module': undefined,
  11. '': undefined
  12. }
  13. Object.keys(paths).forEach(function (path) {
  14. var result = paths[path]
  15. test(function (t) {
  16. t.deepEqual(parse(path), result)
  17. t.end()
  18. })
  19. })