fix: fix branch type regexp to handle version with multiple digits

This commit is contained in:
Pierre Vanduynslager 2018-12-13 15:06:54 -05:00
parent 5d99e02254
commit 52ca0b391c
2 changed files with 15 additions and 2 deletions

View File

@ -23,11 +23,11 @@ function tagsToVersions(tags) {
} }
function isMajorRange(range) { function isMajorRange(range) {
return /^\d\.x(?:\.x)?$/i.test(range); return /^\d+\.x(?:\.x)?$/i.test(range);
} }
function isMaintenanceRange(range) { function isMaintenanceRange(range) {
return /^\d\.[\dx](?:\.x)?$/i.test(range); return /^\d+\.(?:\d+|x)(?:\.x)?$/i.test(range);
} }
function getUpperBound(range) { function getUpperBound(range) {

View File

@ -33,24 +33,37 @@ test('tagsToVersions', t => {
test('isMajorRange', t => { test('isMajorRange', t => {
t.false(isMajorRange('1.1.x')); t.false(isMajorRange('1.1.x'));
t.false(isMajorRange('1.11.x'));
t.false(isMajorRange('11.1.x'));
t.false(isMajorRange('11.11.x'));
t.false(isMajorRange('1.1.X')); t.false(isMajorRange('1.1.X'));
t.false(isMajorRange('1.1.0')); t.false(isMajorRange('1.1.0'));
t.true(isMajorRange('1.x.x')); t.true(isMajorRange('1.x.x'));
t.true(isMajorRange('11.x.x'));
t.true(isMajorRange('1.X.X')); t.true(isMajorRange('1.X.X'));
t.true(isMajorRange('1.x')); t.true(isMajorRange('1.x'));
t.true(isMajorRange('11.x'));
t.true(isMajorRange('1.X')); t.true(isMajorRange('1.X'));
}); });
test('isMaintenanceRange', t => { test('isMaintenanceRange', t => {
t.true(isMaintenanceRange('1.1.x')); t.true(isMaintenanceRange('1.1.x'));
t.true(isMaintenanceRange('11.1.x'));
t.true(isMaintenanceRange('11.11.x'));
t.true(isMaintenanceRange('1.11.x'));
t.true(isMaintenanceRange('1.x.x')); t.true(isMaintenanceRange('1.x.x'));
t.true(isMaintenanceRange('11.x.x'));
t.true(isMaintenanceRange('1.x')); t.true(isMaintenanceRange('1.x'));
t.true(isMaintenanceRange('11.x'));
t.true(isMaintenanceRange('1.1.X')); t.true(isMaintenanceRange('1.1.X'));
t.true(isMaintenanceRange('1.X.X')); t.true(isMaintenanceRange('1.X.X'));
t.true(isMaintenanceRange('1.X')); t.true(isMaintenanceRange('1.X'));
t.false(isMaintenanceRange('1.1.0')); t.false(isMaintenanceRange('1.1.0'));
t.false(isMaintenanceRange('11.1.0'));
t.false(isMaintenanceRange('1.11.0'));
t.false(isMaintenanceRange('11.11.0'));
t.false(isMaintenanceRange('~1.0.0')); t.false(isMaintenanceRange('~1.0.0'));
t.false(isMaintenanceRange('^1.0.0')); t.false(isMaintenanceRange('^1.0.0'));
}); });