Merge branch 'feat/inda-383-daily-stat' into 'main'
[ProtonMail-WebClient.git] / applications / drive / src / app / store / _links / link.test.ts
blob4b4b56dab0e720d55b7c395b15012dc10e1d1d1d
1 import { adjustName, splitLinkName } from './link';
3 describe('adjustName', () => {
4     it('should add index to a file with extension', () => {
5         expect(adjustName(3, 'filename', 'ext')).toBe('filename (3).ext');
6     });
8     it('should add index to a file without extension', () => {
9         expect(adjustName(3, 'filename')).toBe('filename (3)');
10         expect(adjustName(3, 'filename', '')).toBe('filename (3)');
11         expect(adjustName(3, 'filename.')).toBe('filename. (3)');
12         expect(adjustName(3, '.filename.')).toBe('.filename. (3)');
13     });
15     it('should add index to a file without name', () => {
16         expect(adjustName(3, '', 'ext')).toBe('.ext (3)');
17     });
19     it('should leave zero-index filename with extension unchanged', () => {
20         expect(adjustName(0, 'filename', 'ext')).toBe('filename.ext');
21     });
23     it('should leave zero-index filename without extension unchanged', () => {
24         expect(adjustName(0, 'filename')).toBe('filename');
25         expect(adjustName(0, 'filename', '')).toBe('filename');
26         expect(adjustName(0, 'filename.')).toBe('filename.');
27         expect(adjustName(0, '.filename.')).toBe('.filename.');
28     });
30     it('should leave zero-index filename without name unchanged', () => {
31         expect(adjustName(0, '', 'ext')).toBe('.ext');
32     });
33 });
35 describe('splitLinkName', () => {
36     it('should split file name and extension', () => {
37         expect(splitLinkName('filename.ext')).toEqual(['filename', 'ext']);
38     });
40     it('should split file name without extension', () => {
41         expect(splitLinkName('filename')).toEqual(['filename', '']);
42         expect(splitLinkName('filename.')).toEqual(['filename.', '']);
43     });
45     it('should split file name without name', () => {
46         expect(splitLinkName('.ext')).toEqual(['', 'ext']);
47     });
48 });