mirror of
https://github.com/google-gemini/gemini-cli.git
synced 2026-03-10 22:21:22 -07:00
Allow users to reset to auto when it's in fallback mode (#12623)
This commit is contained in:
@@ -1509,6 +1509,37 @@ describe('Config getHooks', () => {
|
||||
expect(config.isInFallbackMode()).toBe(false);
|
||||
expect(mockCoreEvents.emitModelChanged).toHaveBeenCalledWith(proModel);
|
||||
});
|
||||
|
||||
it('should allow setting auto model from non-auto model and disable fallback mode', () => {
|
||||
const config = new Config(baseParams);
|
||||
config.setFallbackMode(true);
|
||||
expect(config.isInFallbackMode()).toBe(true);
|
||||
|
||||
config.setModel('auto');
|
||||
|
||||
expect(config.getModel()).toBe('auto');
|
||||
expect(config.isInFallbackMode()).toBe(false);
|
||||
expect(mockCoreEvents.emitModelChanged).toHaveBeenCalledWith('auto');
|
||||
});
|
||||
|
||||
it('should allow setting auto model from auto model if it is in the fallback mode', () => {
|
||||
const config = new Config({
|
||||
cwd: '/tmp',
|
||||
targetDir: '/path/to/target',
|
||||
debugMode: false,
|
||||
sessionId: 'test-session-id',
|
||||
model: 'auto',
|
||||
usageStatisticsEnabled: false,
|
||||
});
|
||||
config.setFallbackMode(true);
|
||||
expect(config.isInFallbackMode()).toBe(true);
|
||||
|
||||
config.setModel('auto');
|
||||
|
||||
expect(config.getModel()).toBe('auto');
|
||||
expect(config.isInFallbackMode()).toBe(false);
|
||||
expect(mockCoreEvents.emitModelChanged).toHaveBeenCalledWith('auto');
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
@@ -769,12 +769,11 @@ export class Config {
|
||||
}
|
||||
|
||||
setModel(newModel: string): void {
|
||||
this.setFallbackMode(false);
|
||||
|
||||
if (this.model !== newModel) {
|
||||
if (this.model !== newModel || this.inFallbackMode) {
|
||||
this.model = newModel;
|
||||
coreEvents.emitModelChanged(newModel);
|
||||
}
|
||||
this.setFallbackMode(false);
|
||||
}
|
||||
|
||||
isInFallbackMode(): boolean {
|
||||
|
||||
Reference in New Issue
Block a user