Sha256: 64a3418bc8dea975199e6ac83277ad40338b1ed4dc082e5cc50a778c9b885e8c
Contents?: true
Size: 1.33 KB
Versions: 6
Compression:
Stored size: 1.33 KB
Contents
```javascript var parse = require('spdx-expression-parse') var assert = require('assert') var firstAST = { left: { license: 'LGPL-2.1' }, conjunction: 'or', right: { left: { license: 'BSD-3-Clause' }, conjunction: 'and', right: { license: 'MIT' } } } assert.deepEqual( parse('(LGPL-2.1 OR BSD-3-Clause AND MIT)'), firstAST) var secondAST = { left: { license: 'MIT' }, conjunction: 'and', right: { left: { license: 'LGPL-2.1', plus: true }, conjunction: 'and', right: { license: 'BSD-3-Clause' } } } assert.deepEqual( parse('(MIT AND (LGPL-2.1+ AND BSD-3-Clause))'), secondAST) // We handle all the bare SPDX license and exception ids as well. require('spdx-license-ids').forEach(function(id) { assert.deepEqual( parse(id), { license: id }) require('spdx-exceptions').forEach(function(e) { assert.deepEqual( parse(id + ' WITH ' + e), { license: id, exception: e }) }) }) ``` --- [The Software Package Data Exchange (SPDX) specification](http://spdx.org) is the work of the [Linux Foundation](http://www.linuxfoundation.org) and its contributors, and is licensed under the terms of [the Creative Commons Attribution License 3.0 Unported (SPDX: "CC-BY-3.0")](http://spdx.org/licenses/CC-BY-3.0). "SPDX" is a United States federally registered trademark of the Linux Foundation.
Version data entries
6 entries across 5 versions & 2 rubygems