mirror of
https://github.com/labring/FastGPT.git
synced 2026-05-06 01:02:54 +08:00
aaa7d17ef1
* feat: encapsulate logger (#6535) * feat: encapsulate logger * update engines --------- Co-authored-by: archer <545436317@qq.com> * next config * dev shell * Agent sandbox (#6532) * docs: switch to docs layout and apply black theme (#6533) * feat: add Gemini 3.1 models - Add gemini-3.1-pro-preview (released February 19, 2026) - Add gemini-3.1-flash-lite-preview (released March 3, 2026) Both models support: - 1M context window - 64k max response - Vision - Tool choice * docs: switch to docs layout and apply black theme - Change layout from notebook to docs - Update logo to icon + text format - Apply fumadocs black theme - Simplify global.css (keep only navbar and TOC styles) - Fix icon components to properly accept className props - Add mobile text overflow handling - Update Node engine requirement to >=20.x * doc * doc * lock * fix: ts * doc * doc --------- Co-authored-by: archer <archer@archerdeMac-mini.local> Co-authored-by: archer <545436317@qq.com> * Doc (#6493) * cloud doc * doc refactor * doc move * seo * remove doc * yml * doc * fix: tsconfig * fix: tsconfig * sandbox version (#6497) * sandbox version * add sandbox log * update lock * fix * fix: sandbox * doc * add console * i18n * sandbxo in agent * feat: agent sandbox * lock * feat: sandbox ui * sandbox check exists * env tempalte * doc * lock * sandbox in chat window * sandbox entry * fix: test * rename var * sandbox config tip * update sandbox lifecircle * update prompt * rename provider test * sandbox logger * yml --------- Co-authored-by: Archer <archer@fastgpt.io> Co-authored-by: archer <archer@archerdeMac-mini.local> * perf: sandbox error tip * Add sandbox limit and fix some issue (#6550) * sandbox in plan * fix: some issue * fix: test * editor default path * fix: comment * perf: sandbox worksapce * doc * perf: del sandbox * sandbox build * fix: test * fix: pr comment --------- Co-authored-by: Ryo <whoeverimf5@gmail.com> Co-authored-by: Archer <archer@fastgpt.io> Co-authored-by: archer <archer@archerdeMac-mini.local>
33 lines
1.0 KiB
TypeScript
33 lines
1.0 KiB
TypeScript
import { vi } from 'vitest';
|
|
import { randomUUID } from 'crypto';
|
|
import type { Mongoose } from '@fastgpt/service/common/mongo';
|
|
|
|
/**
|
|
* Mock MongoDB connection for testing
|
|
* Creates a unique database for each test run and drops it on connection
|
|
*/
|
|
vi.mock(import('@fastgpt/service/common/mongo/init'), async (importOriginal: any) => {
|
|
const mod = await importOriginal();
|
|
return {
|
|
...mod,
|
|
connectMongo: async (props: { db: Mongoose; url: string; connectedCb?: () => void }) => {
|
|
const { db, url } = props;
|
|
await db.connect(url, { dbName: randomUUID() });
|
|
await db.connection.db?.dropDatabase();
|
|
}
|
|
};
|
|
});
|
|
|
|
/**
|
|
* Mock mongoSessionRun to avoid transaction issues in tests
|
|
* MongoDB transactions require replica set, which may not be available in test environment
|
|
*/
|
|
vi.mock(import('@fastgpt/service/common/mongo/sessionRun'), async () => {
|
|
return {
|
|
mongoSessionRun: vi.fn(async (fn) => {
|
|
// Execute the function without a real session
|
|
return await fn(null as any);
|
|
})
|
|
};
|
|
});
|