import assert from 'node:assert/strict' import test from 'node:test' import { formatQualificationFileSize, QUALIFICATION_MAX_FILE_SIZE, validateQualificationFile } from './qualificationFile.ts' test('accepts the backend-confirmed JPG and PNG formats up to 5MB', () => { assert.equal(validateQualificationFile({ name: '营业执照.jpeg', size: QUALIFICATION_MAX_FILE_SIZE, type: 'image/jpeg' }), '') assert.equal(validateQualificationFile({ name: '营业执照.PNG', size: 2048, type: 'image/png' }), '') }) test('rejects PDF, empty, mismatched, and oversized files', () => { assert.match(validateQualificationFile({ name: '营业执照.pdf', size: 1024, type: 'application/pdf' }), /格式不支持/) assert.match(validateQualificationFile({ name: '伪装图片.png', size: 1024, type: 'text/plain' }), /内容类型/) assert.match(validateQualificationFile({ name: '空文件.png', size: 0, type: 'image/png' }), /内容为空/) assert.match(validateQualificationFile({ name: '超大文件.jpg', size: QUALIFICATION_MAX_FILE_SIZE + 1, type: 'image/jpeg' }), /超过 5MB/) }) test('formats selected file sizes for review', () => { assert.equal(formatQualificationFileSize(512), '512 B') assert.equal(formatQualificationFileSize(1536), '1.5 KB') assert.equal(formatQualificationFileSize(2 * 1024 * 1024), '2.0 MB') })