release: v1.4.1 — 上传策略设置、保留原图与上传 tagNames
GitHub Release / release (push) Canceled after 0s
Publish Docker image / build (linux/amd64, ubuntu-latest, amd64) (push) Canceled after 0s
Publish Docker image / build (linux/arm64, ubuntu-24.04-arm, arm64) (push) Canceled after 0s
Publish Docker image / merge (push) Canceled after 0s
ci / ci (22, ubuntu-latest) (push) Canceled after 0s
GitHub Release / release (push) Canceled after 0s
Publish Docker image / build (linux/amd64, ubuntu-latest, amd64) (push) Canceled after 0s
Publish Docker image / build (linux/arm64, ubuntu-24.04-arm, arm64) (push) Canceled after 0s
Publish Docker image / merge (push) Canceled after 0s
ci / ci (22, ubuntu-latest) (push) Canceled after 0s
管理员可在设置页配置上传大小、格式、限流与保留原图;上传 API 支持按标签名称打标。
This commit is contained in:
1 parent
d0eb364645
commit
6cc4f27f7d
25 files changed
+1354
-172
No files matched your search
@@ -0,0 +1,49 @@
|
||||
import { describe, expect, it } from 'vitest'
|
||||
|
||||
import {
|
||||
DEFAULT_UPLOAD_MAX_FILE_SIZE_MB,
|
||||
normalizeAllowedMimeTypes,
|
||||
parseLoginRateMax,
|
||||
parsePreserveOriginalUpload,
|
||||
parseUploadMaxFileSizeMb,
|
||||
parseUploadRateIpMax,
|
||||
serializeAllowedMimeTypes,
|
||||
serializePreserveOriginalUpload
|
||||
} from './upload-policy'
|
||||
|
||||
describe('upload-policy parsers', () => {
|
||||
it('parses upload max file size mb', () => {
|
||||
expect(parseUploadMaxFileSizeMb('10')).toBe(10)
|
||||
expect(parseUploadMaxFileSizeMb('0')).toBeNull()
|
||||
expect(parseUploadMaxFileSizeMb('101')).toBeNull()
|
||||
})
|
||||
|
||||
it('normalizes allowed mime types', () => {
|
||||
expect(normalizeAllowedMimeTypes('image/png, image/jpeg, image/png')).toEqual([
|
||||
'image/png',
|
||||
'image/jpeg'
|
||||
])
|
||||
expect(normalizeAllowedMimeTypes('image/bmp')).toEqual([])
|
||||
})
|
||||
|
||||
it('serializes allowed mime types in canonical order', () => {
|
||||
expect(serializeAllowedMimeTypes(['image/webp', 'image/jpeg'])).toBe('image/jpeg,image/webp')
|
||||
})
|
||||
|
||||
it('parses rate limit values', () => {
|
||||
expect(parseUploadRateIpMax('60')).toBe(60)
|
||||
expect(parseLoginRateMax('10')).toBe(10)
|
||||
expect(parseUploadRateIpMax('0')).toBeNull()
|
||||
})
|
||||
|
||||
it('defaults max file size mb constant matches legacy 10MB', () => {
|
||||
expect(DEFAULT_UPLOAD_MAX_FILE_SIZE_MB).toBe(10)
|
||||
})
|
||||
|
||||
it('parses preserve original upload flag', () => {
|
||||
expect(parsePreserveOriginalUpload('true')).toBe(true)
|
||||
expect(parsePreserveOriginalUpload('0')).toBe(false)
|
||||
expect(parsePreserveOriginalUpload('')).toBeNull()
|
||||
expect(serializePreserveOriginalUpload(true)).toBe('true')
|
||||
})
|
||||
})
|
||||
Reference in new issue
Block a user