fix(c5): dockingTier 枚举约束 A/B/C
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
parent
16937fcf17
commit
94f0fb2bb5
@ -1,5 +1,8 @@
|
||||
import { describe, expect, it, vi } from 'vitest';
|
||||
import { plainToInstance } from 'class-transformer';
|
||||
import { validate } from 'class-validator';
|
||||
import { AgencyService } from './agency.service.js';
|
||||
import { UpdateAgencyDto } from './dto.js';
|
||||
import type { PrismaService } from '../prisma/prisma.service.js';
|
||||
import { runWithRequestContext } from '../common/context/request-context.js';
|
||||
import type { RequestContext } from '../common/context/request-context.js';
|
||||
@ -53,3 +56,17 @@ describe('AgencyService', () => {
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
describe('UpdateAgencyDto.dockingTier', () => {
|
||||
it('只允许 A/B/C', async () => {
|
||||
const dto = plainToInstance(UpdateAgencyDto, { dockingTier: 'X' });
|
||||
const errors = await validate(dto);
|
||||
expect(errors.some((e) => e.property === 'dockingTier')).toBe(true);
|
||||
});
|
||||
|
||||
it.each(['A', 'B', 'C'])('合法值 %s 通过', async (tier) => {
|
||||
const dto = plainToInstance(UpdateAgencyDto, { dockingTier: tier });
|
||||
const errors = await validate(dto);
|
||||
expect(errors).toEqual([]);
|
||||
});
|
||||
});
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
import { ApiPropertyOptional } from '@nestjs/swagger';
|
||||
import { IsBoolean, IsDateString, IsInt, IsOptional, IsString, Min } from 'class-validator';
|
||||
import { IsBoolean, IsDateString, IsIn, IsInt, IsOptional, IsString, Min } from 'class-validator';
|
||||
|
||||
/**
|
||||
* 更新机构信息。仅暴露业务可编辑字段:
|
||||
@ -65,9 +65,9 @@ export class UpdateAgencyDto {
|
||||
@Min(0)
|
||||
qcThreshold?: number;
|
||||
|
||||
@ApiPropertyOptional({ description: '对接档位' })
|
||||
@ApiPropertyOptional({ description: '对接档位(A/B/C,C 显示「待接口发布」)', enum: ['A', 'B', 'C'] })
|
||||
@IsOptional()
|
||||
@IsString()
|
||||
@IsIn(['A', 'B', 'C'])
|
||||
dockingTier?: string;
|
||||
|
||||
@ApiPropertyOptional({ description: '国家新增项通知开关' })
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user