Switch to handrolled semver implementation

This commit is contained in:
Bán Dénes 2022-01-23 21:45:09 +01:00
parent 2b98b502d6
commit 06d2ae4a7f
8 changed files with 48 additions and 71 deletions

View file

@ -90,9 +90,9 @@ describe('Interface', function() {
it('engine', async function() {
return Promise.all([
ergogen.process({'meta.engine': 'invalid'}).should.be.rejectedWith('Invalid'),
ergogen.process({'meta.engine': '^0.1.2'}).should.be.rejectedWith('satisfy'),
ergogen.process({'meta.engine': '0.1.2'}).should.be.rejectedWith('satisfy'),
// no "points clause" means we're over the engine check, so it "succeeded"
ergogen.process({'meta.engine': `^${version}`}).should.be.rejectedWith('points clause')
ergogen.process({'meta.engine': `${version}`}).should.be.rejectedWith('points clause')
])
})

View file

@ -132,4 +132,19 @@ describe('Utils', function() {
})
})
it('semver', function() {
u.semver('1.2.3').should.deep.equal({major: 1, minor: 2, patch: 3})
u.semver('1.2.3-develop').should.deep.equal({major: 1, minor: 2, patch: 3})
u.semver.bind(this, 'invalid', 'name').should.throw()
})
it('satisfies', function() {
u.satisfies('1.2.3', '1.2.3').should.be.true
u.satisfies('1.2.3', '1.2.1').should.be.true
u.satisfies('1.2.3', '1.1.0').should.be.true
u.satisfies('1.2.3', '1.2.4').should.be.false
u.satisfies('1.2.3', '1.3.0').should.be.false
u.satisfies('1.2.3', '2.0.0').should.be.false
})
})