diff options
Diffstat (limited to 'spec/frontend/ide/utils_spec.js')
-rw-r--r-- | spec/frontend/ide/utils_spec.js | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/spec/frontend/ide/utils_spec.js b/spec/frontend/ide/utils_spec.js index 97dc8217ecc..6cd2128d356 100644 --- a/spec/frontend/ide/utils_spec.js +++ b/spec/frontend/ide/utils_spec.js @@ -9,6 +9,7 @@ import { getPathParents, getPathParent, readFileAsDataURL, + addNumericSuffix, } from '~/ide/utils'; describe('WebIDE utils', () => { @@ -291,4 +292,43 @@ describe('WebIDE utils', () => { }); }); }); + + /* + * hello-2425 -> hello-2425 + * hello.md -> hello-1.md + * hello_2.md -> hello_3.md + * hello_ -> hello_1 + * master-patch-22432 -> master-patch-22433 + * patch_332 -> patch_333 + */ + + describe('addNumericSuffix', () => { + it.each` + input | output + ${'hello'} | ${'hello-1'} + ${'hello2'} | ${'hello-3'} + ${'hello.md'} | ${'hello-1.md'} + ${'hello_2.md'} | ${'hello_3.md'} + ${'hello_'} | ${'hello_1'} + ${'master-patch-22432'} | ${'master-patch-22433'} + ${'patch_332'} | ${'patch_333'} + `('adds a numeric suffix to a given filename/branch name: $input', ({ input, output }) => { + expect(addNumericSuffix(input)).toBe(output); + }); + + it.each` + input | output + ${'hello'} | ${'hello-39135'} + ${'hello2'} | ${'hello-39135'} + ${'hello.md'} | ${'hello-39135.md'} + ${'hello_2.md'} | ${'hello_39135.md'} + ${'hello_'} | ${'hello_39135'} + ${'master-patch-22432'} | ${'master-patch-39135'} + ${'patch_332'} | ${'patch_39135'} + `('adds a random suffix if randomize=true is passed for name: $input', ({ input, output }) => { + jest.spyOn(Math, 'random').mockReturnValue(0.391352525); + + expect(addNumericSuffix(input, true)).toBe(output); + }); + }); }); |