github
3263 of 3860 branches covered (84.53%)
67 of 70 new or added lines in 23 files covered. (95.71%)
762 existing lines in 27 files now uncovered.25152 of 31466 relevant lines covered (79.93%)
1188.31 hits per line
| 1 |
import { slugify } from 'transliteration';
|
2✔ |
| 2 |
|
2✔ |
| 3 |
export function convertNameToValidCharacter(name: string, maxLength = 10): string { |
|
| 4 |
let cleanedName = slugify(name, { allowedChars: 'a-zA-Z0-9_', separator: '_', lowercase: false });
|
4,749✔ |
| 5 |
|
4,749✔ |
| 6 |
if (cleanedName === '' || /^_+$/.test(cleanedName)) { |
|
|
UNCOV
7
|
return 'unnamed'; |
× |
|
UNCOV
8
|
} |
× |
| 9 |
|
4,749✔ |
| 10 |
if (!/^[a-z]/i.test(cleanedName)) {
|
|
|
UNCOV
11
|
cleanedName = 't' + cleanedName;
|
× |
|
UNCOV
12
|
} |
× |
| 13 |
|
4,749✔ |
| 14 |
cleanedName = cleanedName.substring(0, maxLength);
|
4,749✔ |
| 15 |
|
4,749✔ |
| 16 |
return cleanedName;
|
4,749✔ |
| 17 |
} |
4,749✔ |