summaryrefslogtreecommitdiff
path: root/packages/cli/src/ui/components/AuthDialog.test.tsx
diff options
context:
space:
mode:
Diffstat (limited to 'packages/cli/src/ui/components/AuthDialog.test.tsx')
-rw-r--r--packages/cli/src/ui/components/AuthDialog.test.tsx41
1 files changed, 41 insertions, 0 deletions
diff --git a/packages/cli/src/ui/components/AuthDialog.test.tsx b/packages/cli/src/ui/components/AuthDialog.test.tsx
new file mode 100644
index 00000000..a5f46d93
--- /dev/null
+++ b/packages/cli/src/ui/components/AuthDialog.test.tsx
@@ -0,0 +1,41 @@
+/**
+ * @license
+ * Copyright 2025 Google LLC
+ * SPDX-License-Identifier: Apache-2.0
+ */
+
+import { render } from 'ink-testing-library';
+import { AuthDialog } from './AuthDialog.js';
+import { LoadedSettings } from '../../config/settings.js';
+import { AuthType } from '@gemini-cli/core';
+
+describe('AuthDialog', () => {
+ it('should show an error if the initial auth type is invalid', () => {
+ const settings: LoadedSettings = new LoadedSettings(
+ {
+ settings: {
+ selectedAuthType: AuthType.USE_GEMINI,
+ },
+ path: '',
+ },
+ {
+ settings: {},
+ path: '',
+ },
+ [],
+ );
+
+ const { lastFrame } = render(
+ <AuthDialog
+ onSelect={() => {}}
+ onHighlight={() => {}}
+ settings={settings}
+ initialErrorMessage="GEMINI_API_KEY environment variable not found"
+ />,
+ );
+
+ expect(lastFrame()).toContain(
+ 'GEMINI_API_KEY environment variable not found',
+ );
+ });
+});