add:如果打手端使用的设备是移动端,验证图片和验证视频上传的时候加个调用相机的功能

This commit is contained in:
2026-10-24 17:03:57 +08:00
parent 0ee5554f57
commit 0d3dd3eacd
7 changed files with 266 additions and 20 deletions
@@ -0,0 +1,34 @@
import assert from 'node:assert/strict'
import test from 'node:test'
import { cameraCaptureInputProps, resolveCameraEntryEnabled } from '../src/utils/camera-capture.ts'
test('相机入口:仅打手端移动端显示', () => {
assert.equal(resolveCameraEntryEnabled({ isMobile: true, scope: 'worker' }), true)
assert.equal(resolveCameraEntryEnabled({ isMobile: false, scope: 'worker' }), false)
assert.equal(resolveCameraEntryEnabled({ isMobile: true, scope: 'admin' }), false)
assert.equal(resolveCameraEntryEnabled({ isMobile: true, scope: 'collect' }), false)
assert.equal(resolveCameraEntryEnabled({ isMobile: true }), false)
})
test('相机入口:allowCamera 显式开关优先', () => {
assert.equal(
resolveCameraEntryEnabled({ isMobile: true, scope: 'worker', allowCamera: false }),
false,
)
assert.equal(
resolveCameraEntryEnabled({ isMobile: false, scope: 'admin', allowCamera: true }),
true,
)
})
test('相机构造:图片/视频分别使用对应 accept 与后置摄像头', () => {
assert.deepEqual(cameraCaptureInputProps('image'), {
accept: 'image/*',
capture: 'environment',
})
assert.deepEqual(cameraCaptureInputProps('video'), {
accept: 'video/*',
capture: 'environment',
})
})