Update and test folder regex
parent
033a0990cb
commit
a18b837919
File diff suppressed because one or more lines are too long
|
@ -7,7 +7,7 @@ class Input {
|
|||
}
|
||||
|
||||
static isValidFolderName(folderName) {
|
||||
const validFolderName = new RegExp(/^(\.|\.\/)?(\.?\w+\/?)*$/);
|
||||
const validFolderName = new RegExp(/^(\.|\.\/)?(\.?\w+([-_]?\w+)*\/?)*$/);
|
||||
|
||||
return validFolderName.test(folderName);
|
||||
}
|
||||
|
|
|
@ -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);
|
||||
});
|
||||
});
|
||||
});
|
||||
|
|
Loading…
Reference in New Issue