From 9dd922d2c72d8b5b63790a81f0ea232f4f796cd2 Mon Sep 17 00:00:00 2001 From: EAGzzyCSL Date: Wed, 8 Apr 2026 10:21:16 +0800 Subject: [PATCH] chore(test): ut for disable thinking in AiJudgeOrderSensitive --- .../ai-judge-order-sensitive.test.ts | 42 +++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 packages/core/tests/unit-test/ai-judge-order-sensitive.test.ts diff --git a/packages/core/tests/unit-test/ai-judge-order-sensitive.test.ts b/packages/core/tests/unit-test/ai-judge-order-sensitive.test.ts new file mode 100644 index 0000000000..0a2f2fb97d --- /dev/null +++ b/packages/core/tests/unit-test/ai-judge-order-sensitive.test.ts @@ -0,0 +1,42 @@ +import { AiJudgeOrderSensitive } from '@/ai-model/inspect'; +import type { IModelConfig } from '@midscene/shared/env'; +import { describe, expect, it, vi } from 'vitest'; + +describe('AiJudgeOrderSensitive', () => { + it('forces deepThink to false when judging order sensitivity', async () => { + const callAIFn = vi.fn().mockResolvedValue({ + content: { isOrderSensitive: true }, + usage: { total_tokens: 12 }, + }); + + const modelConfig: IModelConfig = { + modelName: 'test-model', + modelDescription: 'test model', + intent: 'default', + }; + + const result = await AiJudgeOrderSensitive( + 'the button to the right of login', + callAIFn as any, + modelConfig, + ); + + expect(callAIFn).toHaveBeenCalledWith( + [ + expect.objectContaining({ role: 'system' }), + expect.objectContaining({ + role: 'user', + content: + 'Analyze this element description: "the button to the right of login"', + }), + ], + modelConfig, + { deepThink: false }, + ); + + expect(result).toEqual({ + isOrderSensitive: true, + usage: { total_tokens: 12 }, + }); + }); +});