package com.zy.ai.service;
|
|
import com.zy.ai.entity.LlmRouteConfig;
|
import org.junit.jupiter.api.Test;
|
|
import static org.junit.jupiter.api.Assertions.assertEquals;
|
import static org.junit.jupiter.api.Assertions.assertNotNull;
|
import static org.junit.jupiter.api.Assertions.assertNull;
|
|
class LlmRoutingServiceProtocolDefaultsTest {
|
|
@Test
|
void fillAndNormalizeShouldDefaultProtocolFieldsAndTrimStrings() {
|
LlmRoutingService service = new LlmRoutingService(null, null);
|
LlmRouteConfig config = new LlmRouteConfig();
|
config.setName(" route-a ");
|
config.setProviderType(" ");
|
config.setProtocolType(null);
|
config.setBaseUrl(" https://example.com/v1 ");
|
config.setEndpointPath(" /chat/completions ");
|
config.setApiKey(" sk-test ");
|
config.setAuthType("");
|
config.setAuthHeaderName(" Authorization ");
|
config.setModel(" gpt-test ");
|
config.setCapabilities(" chat,tools ");
|
config.setRequestOptions(" {\"temperature\":0} ");
|
config.setMemo(" ");
|
|
service.fillAndNormalize(config, true);
|
|
assertEquals("route-a", config.getName());
|
assertEquals("OPENAI_COMPATIBLE", config.getProviderType());
|
assertEquals("OPENAI_CHAT_COMPLETIONS", config.getProtocolType());
|
assertEquals("https://example.com/v1", config.getBaseUrl());
|
assertEquals("/chat/completions", config.getEndpointPath());
|
assertEquals("sk-test", config.getApiKey());
|
assertEquals("BEARER", config.getAuthType());
|
assertEquals("Authorization", config.getAuthHeaderName());
|
assertEquals("gpt-test", config.getModel());
|
assertEquals("chat,tools", config.getCapabilities());
|
assertEquals("{\"temperature\":0}", config.getRequestOptions());
|
assertNull(config.getMemo());
|
assertNotNull(config.getCreateTime());
|
assertNotNull(config.getUpdateTime());
|
}
|
}
|