Update and test folder regex

pull/11/head
Webber 2020-01-30 09:04:32 +01:00 committed by Webber Takken
parent 033a0990cb
commit a18b837919
3 changed files with 23 additions and 2 deletions

File diff suppressed because one or more lines are too long

View File

@ -7,7 +7,7 @@ class Input {
}
static isValidFolderName(folderName) {
const validFolderName = new RegExp(/^(\.|\.\/)?(\.?\w+\/?)*$/);
const validFolderName = new RegExp(/^(\.|\.\/)?(\.?\w+([-_]?\w+)*\/?)*$/);
return validFolderName.test(folderName);
}

View File

@ -10,4 +10,25 @@ describe('Input', () => {
expect(typeof Input.getFromUser()).toStrictEqual('object');
});
});
describe('isValidFolderName', () => {
test.each([
'.',
'./',
'folder',
'trailing/',
'.hidden',
'.hidden/sub',
'.hidden/trailing/',
'./.hidden-sub',
'hyphen-folder',
'under_score',
])('returns true for %s', folderName => {
expect(Input.isValidFolderName(folderName)).toStrictEqual(true);
});
test.each(['..', '../'])('returns false for %s', folderName => {
expect(Input.isValidFolderName(folderName)).toStrictEqual(false);
});
});
});