uppy/packages/@uppy/utils/src/generateFileID.test.ts
Prakash d301c01d6a
@uppy/utils: update export maps (#5900)
- cleanup `@uppy/utils ` removed unused / redundant modules .
- migrated modules and tests from `.js` to `.ts`
- removed all the nested export paths
- updated `@uppy/utils` import paths for all packages
- `@uppy/angular` is still failing while running`yarn build` , I'm
looking into it.

---------

Co-authored-by: Merlijn Vos <merlijn@soverin.net>
2025-08-19 12:25:27 +02:00

52 lines
1.5 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import { describe, expect, it } from 'vitest'
import generateFileID from './generateFileID.js'
describe('generateFileID', () => {
it('should take the filename object and produce a lowercase file id made up of uppy- prefix, file name (cleaned up to be lowercase, letters and numbers only), type, relative path (folder) from file.meta.relativePath, size and lastModified date', () => {
const fileObj = {
name: 'fOo0Fi@£$.jpg',
type: 'image/jpeg',
data: {
lastModified: 1498510508000,
size: 2271173,
} as File,
}
expect(generateFileID(fileObj, 'uppy')).toEqual(
'uppy-foo0fi////jpg-20-53-14-1e-image/jpeg-2271173-1498510508000',
)
expect(
generateFileID(
{
name: 'джумла-джpумлатест.jpg',
type: 'image/jpeg',
data: {
lastModified: 1498510508000,
size: 2271173,
} as File,
},
'uppy',
),
).toEqual(
'uppy-/////////p/////////jpg-11k-11m-123-11s-11r-11g-1d-11k-11m-123-11s-11r-11g-122-11l-121-122-1e-image/jpeg-2271173-1498510508000',
)
expect(
generateFileID(
{
name: 'hello.jpg',
type: 'image/jpeg',
data: {
lastModified: 1498510508000,
size: 2271173,
} as File,
meta: {
relativePath: 'folder/a',
},
},
'uppy',
),
).toEqual('uppy-hello/jpg-1e-image/jpeg-folder/a-1f-2271173-1498510508000')
})
})