mirror of
https://github.com/langgenius/dify.git
synced 2026-03-25 00:07:56 +08:00
Signed-off-by: yyh <yuanyouhuilyz@gmail.com> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: CodingOnStar <hanxujiang@dify.com> Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> Co-authored-by: Coding On Star <447357187@qq.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: -LAN- <laipz8200@outlook.com> Co-authored-by: statxc <tyleradams93226@gmail.com>
44 lines
1.5 KiB
TypeScript
44 lines
1.5 KiB
TypeScript
import { getLLMModelIssue, isLLMModelProviderInstalled, LLMModelIssueCode } from './utils'
|
|
|
|
describe('llm utils', () => {
|
|
describe('getLLMModelIssue', () => {
|
|
it('returns provider-required when the model provider is missing', () => {
|
|
expect(getLLMModelIssue({ modelProvider: undefined })).toBe(LLMModelIssueCode.providerRequired)
|
|
})
|
|
|
|
it('returns provider-plugin-unavailable when the provider plugin is not installed', () => {
|
|
expect(getLLMModelIssue({
|
|
modelProvider: 'langgenius/openai/gpt-4.1',
|
|
isModelProviderInstalled: false,
|
|
})).toBe(LLMModelIssueCode.providerPluginUnavailable)
|
|
})
|
|
|
|
it('returns null when the provider is present and installed', () => {
|
|
expect(getLLMModelIssue({
|
|
modelProvider: 'langgenius/openai/gpt-4.1',
|
|
isModelProviderInstalled: true,
|
|
})).toBeNull()
|
|
})
|
|
})
|
|
|
|
describe('isLLMModelProviderInstalled', () => {
|
|
it('returns true when the model provider is missing', () => {
|
|
expect(isLLMModelProviderInstalled(undefined, new Set())).toBe(true)
|
|
})
|
|
|
|
it('matches installed plugin ids using the provider plugin prefix', () => {
|
|
expect(isLLMModelProviderInstalled(
|
|
'langgenius/openai/gpt-4.1',
|
|
new Set(['langgenius/openai']),
|
|
)).toBe(true)
|
|
})
|
|
|
|
it('returns false when the provider plugin id is not installed', () => {
|
|
expect(isLLMModelProviderInstalled(
|
|
'langgenius/openai/gpt-4.1',
|
|
new Set(['langgenius/anthropic']),
|
|
)).toBe(false)
|
|
})
|
|
})
|
|
})
|