1.4.0 • Published 5 years ago

correct-license-metadata v1.4.0

Weekly downloads
6,745
License
MIT
Repository
github
Last release
5 years ago

interpret old-style npm licenses arrays and other aberrations

var correct = require('correct-license-metadata')
var assert = require('assert')

assert.strictEqual(
  correct({
    license: '(MIT OR GPL-2.0-only)' // valid metadata
  }),
  '(MIT OR GPL-2.0-only)'
)

assert.strictEqual(
  correct({
    licenses: [ // old-style licenses array
      {
        type: 'MIT',
        url: 'http://opensource.org/licenses/MIT'
      }
    ]
  }),
  'MIT'
)

assert.strictEqual(
  correct({
    license: {
      type: 'MIT',
      url: 'https://github.com/isaacs/rimraf/raw/master/LICENSE'
    }
  }),
  'MIT'
)

assert.strictEqual(
  correct({
    licenses: [
      {
        type: 'Apache License 2.0', // invalid SPDX ID
        url: 'https://github.com/Microsoft/tslib/blob/master/LICENSE.txt'
      }
    ]
  }),
  'Apache-2.0'
)

assert.strictEqual(
  correct({
    license: [ // old-style license array
      {
        type: 'MIT',
        url: 'http://opensource.org/licenses/MIT'
      }
    ]
  }),
  'MIT'
)

assert.strictEqual(
  correct({
    license: "MIT/X11"
  }),
  'MIT'
)

assert.strictEqual(
  correct({
    licenses: ['MIT'] // invalid
  }),
  'MIT'
)

assert.strictEqual(
  correct({
    licenses: ['MIT'], // invalid
    license: 'GPL-3.0' // valid, conflicting
  }),
  false
)

assert.throws(
  function () {
    correct('not an object')
  },
  /argument must be an object/
)
1.4.0

5 years ago

1.3.0

5 years ago

1.2.0

5 years ago

1.1.0

5 years ago

1.0.1

5 years ago

1.0.0

5 years ago