18 lines
590 B
TypeScript
18 lines
590 B
TypeScript
import { sanitizeUploadFilename } from './sanitizeUploadFilename';
|
|
|
|
describe('sanitizeUploadFilename', () => {
|
|
it('strips path segments and unsafe characters', () => {
|
|
expect(sanitizeUploadFilename('../../evil name "file".pdf')).toBe('evil name file.pdf');
|
|
});
|
|
|
|
it('returns file when the sanitized name is empty', () => {
|
|
expect(sanitizeUploadFilename(' ')).toBe('file');
|
|
});
|
|
|
|
it('truncates very long filenames', () => {
|
|
const longName = `${'a'.repeat(300)}.pdf`;
|
|
|
|
expect(sanitizeUploadFilename(longName).length).toBe(255);
|
|
});
|
|
});
|