import type { BaseModelCatalogItem } from '@easyai-ai-gateway/contracts'; import { describe, expect, it } from 'vitest'; import { createEmptyPlatformForm, platformModelPayloads } from './platform-form'; const baseModel = { id: 'model-1', providerKey: 'simulation', canonicalModelKey: 'simulation:model-1', invocationName: 'model-1', providerModelName: 'model-1', modelType: ['video_generate'], modelAlias: 'model-1', displayName: 'Model 1', referenceCount: 0, pricingVersion: 1, status: 'active', createdAt: '2026-07-24T00:00:00Z', updatedAt: '2026-07-24T00:00:00Z', } satisfies BaseModelCatalogItem; function selectedForm() { return { ...createEmptyPlatformForm('simulation'), selectedModelIds: [baseModel.id], }; } describe('platform model rate limit payload', () => { it('preserves an existing model policy when the edit form was not touched', () => { const [payload] = platformModelPayloads([baseModel], selectedForm()); expect(payload.rateLimitPolicyMode).toBeUndefined(); expect(payload.rateLimitPolicy).toBeUndefined(); }); it('writes inherit only after the override is explicitly disabled', () => { const [payload] = platformModelPayloads([baseModel], { ...selectedForm(), modelRateLimitOverrideTouched: true, }); expect(payload.rateLimitPolicyMode).toBe('inherit'); expect(payload.rateLimitPolicy).toBeUndefined(); }); it('writes an explicit unlimited override when the enabled policy has no rules', () => { const [payload] = platformModelPayloads([baseModel], { ...selectedForm(), modelOverrideRateLimit: true, modelRateLimitOverrideTouched: true, }); expect(payload.rateLimitPolicyMode).toBe('override'); expect(payload.rateLimitPolicy).toEqual({ rules: [] }); }); });