diff options
| author | joshualitt <[email protected]> | 2025-08-01 12:30:39 -0700 |
|---|---|---|
| committer | GitHub <[email protected]> | 2025-08-01 19:30:39 +0000 |
| commit | 67d16992cfc6b18f1d242865e0fbd8f5f40cf25f (patch) | |
| tree | a6483f9846d837a7913c814999e4cbeb0532fa1d /packages/cli/src/gemini.test.tsx | |
| parent | 9382334a5ebb02ed716c73f45b469a8e8c932a13 (diff) | |
bug(cli): Prefer IPv4 dns resolution by default. (#5338)
Diffstat (limited to 'packages/cli/src/gemini.test.tsx')
| -rw-r--r-- | packages/cli/src/gemini.test.tsx | 41 |
1 files changed, 40 insertions, 1 deletions
diff --git a/packages/cli/src/gemini.test.tsx b/packages/cli/src/gemini.test.tsx index 505841c7..c8bb45ab 100644 --- a/packages/cli/src/gemini.test.tsx +++ b/packages/cli/src/gemini.test.tsx @@ -6,7 +6,11 @@ import stripAnsi from 'strip-ansi'; import { describe, it, expect, vi, beforeEach, afterEach } from 'vitest'; -import { main, setupUnhandledRejectionHandler } from './gemini.js'; +import { + main, + setupUnhandledRejectionHandler, + validateDnsResolutionOrder, +} from './gemini.js'; import { LoadedSettings, SettingsFile, @@ -211,3 +215,38 @@ describe('gemini.tsx main function', () => { processExitSpy.mockRestore(); }); }); + +describe('validateDnsResolutionOrder', () => { + let consoleWarnSpy: ReturnType<typeof vi.spyOn>; + + beforeEach(() => { + consoleWarnSpy = vi.spyOn(console, 'warn').mockImplementation(() => {}); + }); + + afterEach(() => { + consoleWarnSpy.mockRestore(); + }); + + it('should return "ipv4first" when the input is "ipv4first"', () => { + expect(validateDnsResolutionOrder('ipv4first')).toBe('ipv4first'); + expect(consoleWarnSpy).not.toHaveBeenCalled(); + }); + + it('should return "verbatim" when the input is "verbatim"', () => { + expect(validateDnsResolutionOrder('verbatim')).toBe('verbatim'); + expect(consoleWarnSpy).not.toHaveBeenCalled(); + }); + + it('should return the default "ipv4first" when the input is undefined', () => { + expect(validateDnsResolutionOrder(undefined)).toBe('ipv4first'); + expect(consoleWarnSpy).not.toHaveBeenCalled(); + }); + + it('should return the default "ipv4first" and log a warning for an invalid string', () => { + expect(validateDnsResolutionOrder('invalid-value')).toBe('ipv4first'); + expect(consoleWarnSpy).toHaveBeenCalledOnce(); + expect(consoleWarnSpy).toHaveBeenCalledWith( + 'Invalid value for dnsResolutionOrder in settings: "invalid-value". Using default "ipv4first".', + ); + }); +}); |
