Files
anything-llm/server/__tests__/utils/helpers/azureOpenAiModelPref.test.js
Ryan 179a823ab1 Fix: Azure OpenAI model key collision (#5092)
* fix: Migrate AzureOpenAI model key from OPEN_MODEL_PREF to prevent the naming collision. No effort necessary from current users.

* test: add backwards compat tests for AzureOpenAI model key migration

* patch missing env example file

* linting

---------

Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2026-03-05 17:12:08 -08:00

56 lines
2.2 KiB
JavaScript

/* eslint-env jest */
/**
* Tests for the AzureOpenAI model key migration from OPEN_MODEL_PREF
* to AZURE_OPENAI_MODEL_PREF, ensuring backwards compatibility for
* existing users who have OPEN_MODEL_PREF set.
*
* Related issue: https://github.com/Mintplex-Labs/anything-llm/issues/3839
*/
describe("AzureOpenAI model key backwards compatibility", () => {
const ORIGINAL_ENV = process.env;
beforeEach(() => {
jest.resetModules();
process.env = { ...ORIGINAL_ENV };
delete process.env.AZURE_OPENAI_MODEL_PREF;
delete process.env.OPEN_MODEL_PREF;
});
afterAll(() => {
process.env = ORIGINAL_ENV;
});
describe("getBaseLLMProviderModel - helpers/index.js", () => {
test("returns AZURE_OPENAI_MODEL_PREF when set", () => {
process.env.AZURE_OPENAI_MODEL_PREF = "my-azure-deployment";
process.env.OPEN_MODEL_PREF = "gpt-4o";
const { getBaseLLMProviderModel } = require("../../../utils/helpers/index");
expect(getBaseLLMProviderModel({ provider: "azure" })).toBe("my-azure-deployment");
});
test("falls back to OPEN_MODEL_PREF when AZURE_OPENAI_MODEL_PREF is not set (backwards compat)", () => {
process.env.OPEN_MODEL_PREF = "my-old-azure-deployment";
const { getBaseLLMProviderModel } = require("../../../utils/helpers/index");
expect(getBaseLLMProviderModel({ provider: "azure" })).toBe("my-old-azure-deployment");
});
test("openai provider still uses OPEN_MODEL_PREF exclusively", () => {
process.env.OPEN_MODEL_PREF = "gpt-4o";
process.env.AZURE_OPENAI_MODEL_PREF = "my-azure-deployment";
const { getBaseLLMProviderModel } = require("../../../utils/helpers/index");
expect(getBaseLLMProviderModel({ provider: "openai" })).toBe("gpt-4o");
});
test("azure and openai return different values when both keys are set", () => {
process.env.OPEN_MODEL_PREF = "gpt-4o";
process.env.AZURE_OPENAI_MODEL_PREF = "my-azure-deployment";
const { getBaseLLMProviderModel } = require("../../../utils/helpers/index");
expect(getBaseLLMProviderModel({ provider: "azure" })).not.toBe(
getBaseLLMProviderModel({ provider: "openai" })
);
});
});
});