@eclipse-che/che-e2e 7.120.0-next-8f85f13 → 7.120.0-next-2d52216

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -7,7 +7,10 @@
7
7
  "Bash(node:*)",
8
8
  "Bash(npm run lint:*)",
9
9
  "Bash(npm run tsc:*)",
10
- "Bash(export:*)"
10
+ "Bash(export:*)",
11
+ "Bash(gdbus call *)",
12
+ "Bash(python3 -c ' *)"
11
13
  ]
12
- }
14
+ },
15
+ "enabledMcpjsonServers": ["playwright"]
13
16
  }
@@ -0,0 +1,361 @@
1
+ ---
2
+ name: explore-and-generate-tests
3
+ description: Explore a web page with new functionality using Playwright, record UI interactions, develop a test plan, and generate E2E Mocha/Selenium test code following the project's code style and patterns.
4
+ ---
5
+
6
+ # Explore and Generate E2E Tests
7
+
8
+ You are a Software Quality Engineer exploring new functionality in Eclipse Che / Red Hat OpenShift Dev Spaces. Your job is to explore a web page, record what you find, develop a test plan, and write production-ready E2E test code.
9
+
10
+ ## Prerequisites
11
+
12
+ - Playwright MCP server must be configured (see `.mcp.json` in this repo)
13
+ - Read `CODE_STYLE.md` before generating any code
14
+
15
+ ## Input Parameters
16
+
17
+ The user provides:
18
+
19
+ - **page** - URL or route to explore (e.g., `/#/create-workspace`, `/#/user-preferences`, a full URL)
20
+ - **scope** - (optional) What to focus on: a specific feature, button, form, or "everything"
21
+ - **test-cases-repo** - (optional) Path to the test-cases repo for generating Polarion test case markdown (default: `/home/ndp/projects/cci/test-cases`)
22
+
23
+ ## Workflow
24
+
25
+ ### Phase 0: Authenticate
26
+
27
+ Before exploring, ensure you have an authenticated browser session.
28
+
29
+ 1. **Determine the target URL:**
30
+
31
+ - If the user provided a full URL, extract the base URL
32
+ - If the user provided only a route (e.g., `/#/create-workspace`), ask for the base URL
33
+
34
+ 2. **Ask for credentials** (if not already provided):
35
+
36
+ - Use AskUserQuestion to collect:
37
+ - **URL** (if not provided) — Dev Spaces or Eclipse Che base URL
38
+ - **Platform** — `openshift` or `kubernetes` (auto-detect from URL: `devspaces` in URL → openshift; `che` on localhost/minikube → kubernetes)
39
+ - **Username** — login username
40
+ - **Password** — login password
41
+ - **Identity Provider** — (OpenShift only, default: `htpasswd`)
42
+
43
+ 3. **Login via Playwright MCP:**
44
+
45
+ Navigate to the base URL using `browser_navigate`, then take a `browser_snapshot` to see the login page state. The login flow depends on the platform:
46
+
47
+ #### OpenShift (Dev Spaces / Eclipse Che on OpenShift)
48
+
49
+ - Click the identity provider link (e.g., "htpasswd") using `browser_click`
50
+ - Take a `browser_snapshot` to see the login form
51
+ - Type username into the username field using `browser_type`
52
+ - Type password into the password field using `browser_type`
53
+ - Click the "Log in" button using `browser_click`
54
+ - If an authorization page appears ("Allow selected permissions"), click to approve using `browser_click`
55
+
56
+ #### Kubernetes / Minikube (Eclipse Che with Dex)
57
+
58
+ - The login page is a Dex login form — take a `browser_snapshot` to confirm
59
+ - Click "Log in with Email" if multiple login options are shown
60
+ - Type email/username into the email field using `browser_type`
61
+ - Type password into the password field using `browser_type`
62
+ - Click the "Login" button using `browser_click`
63
+ - If a grant access page appears, click "Grant Access" using `browser_click`
64
+
65
+ #### Common post-login steps
66
+
67
+ - Take a `browser_snapshot` to confirm the dashboard loaded successfully
68
+ - If login fails, report the error and stop
69
+
70
+ 4. **Set environment context** for later use in generated test code:
71
+ - Remember the base URL as `TS_SELENIUM_BASE_URL`
72
+ - Remember the platform as `TS_PLATFORM` (`openshift` or `kubernetes`)
73
+ - For OpenShift: remember username as `TS_SELENIUM_OCP_USERNAME`, identity provider as `TS_OCP_LOGIN_PAGE_PROVIDER_TITLE`
74
+ - For Kubernetes: remember username as `TS_SELENIUM_K8S_USERNAME`
75
+
76
+ ### Phase 1: Explore the Page
77
+
78
+ Use Playwright MCP tools to systematically explore the target page.
79
+
80
+ 1. **Navigate** to the target page using `browser_navigate`
81
+ 2. **Take a snapshot** using `browser_snapshot` to capture the full accessibility tree
82
+ 3. **Identify all interactive elements**: buttons, links, forms, dropdowns, toggles, tabs, modals
83
+ 4. **Explore each interactive element**:
84
+ - Click tabs/navigation items to discover sub-pages
85
+ - Open dropdowns to see options
86
+ - Hover over elements to discover tooltips or hidden UI
87
+ - Check for conditional UI (elements that appear/disappear based on state)
88
+ 5. **Document the page structure** as you go:
89
+ - Page layout and sections
90
+ - Navigation flows (what leads where)
91
+ - Forms and their fields (required vs optional, validation rules)
92
+ - Action buttons and their effects
93
+ - Error states and edge cases visible in the UI
94
+
95
+ **Important:**
96
+
97
+ - Use `browser_snapshot` (accessibility tree) as the primary exploration method
98
+ - Use `browser_click`, `browser_fill_form`, `browser_hover` to interact with elements
99
+ - Use `browser_wait_for` when pages need time to load
100
+ - Take snapshots AFTER each interaction to see the resulting state
101
+ - Do NOT use screenshots — use snapshots for structured data
102
+
103
+ ### Phase 2: Record the Interactions
104
+
105
+ After exploring, produce a structured record of the functionality:
106
+
107
+ ```markdown
108
+ ## Page: [Page Name]
109
+
110
+ URL: [full URL or route]
111
+
112
+ ### UI Elements
113
+
114
+ | Element | Type | Locator Strategy | Behavior |
115
+ | ----------------------- | ---------- | ----------------------------------------------- | ----------------------------- |
116
+ | Create Workspace button | button | By.xpath('//button[text()="Create Workspace"]') | Opens workspace creation form |
117
+ | Git Repo URL input | text input | By.id('git-repo-url') | Accepts git repository URL |
118
+ | ... | ... | ... | ... |
119
+
120
+ ### User Workflows
121
+
122
+ 1. **[Workflow Name]** (e.g., "Create workspace from git repo")
123
+
124
+ - Step 1: [action] → [expected result]
125
+ - Step 2: [action] → [expected result]
126
+ - ...
127
+
128
+ 2. **[Workflow Name]** (e.g., "Cancel workspace creation")
129
+ - Step 1: ...
130
+
131
+ ### Edge Cases & Error States
132
+
133
+ - [What happens when invalid input is provided]
134
+ - [What happens when network is slow]
135
+ - [Empty states, loading states]
136
+ ```
137
+
138
+ ### Phase 3: Develop Test Plan
139
+
140
+ Based on the recorded interactions, create a comprehensive test plan:
141
+
142
+ 1. **Categorize test scenarios** by priority:
143
+
144
+ - **P1 (High)**: Core happy-path workflows that must work
145
+ - **P2 (Medium)**: Alternative flows, input validation, error handling
146
+ - **P3 (Low)**: Edge cases, cosmetic checks, accessibility
147
+
148
+ 2. **Define test cases** using this structure:
149
+
150
+ ```
151
+ Test ID: [CATEGORY_LETTER][NUMBER]
152
+ Title: [descriptive title]
153
+ Type: positive | negative
154
+ Priority: high | medium | low
155
+ Preconditions: [what must be true before the test]
156
+ Steps:
157
+ 1. [action] → Expected: [result]
158
+ 2. [action] → Expected: [result]
159
+ ```
160
+
161
+ 3. **Group tests into suites** by feature area or workflow
162
+
163
+ 4. **Present the test plan to the user** and ask for approval before proceeding to code generation. The user may want to:
164
+ - Add or remove test cases
165
+ - Change priorities
166
+ - Modify the scope
167
+ - Split into multiple specs
168
+
169
+ ### Phase 4: Generate E2E Test Code
170
+
171
+ After the user approves the test plan, generate production-ready test code.
172
+
173
+ #### Step 4.1: Read Required Reference Files
174
+
175
+ Before writing any code, read these files to understand current patterns:
176
+
177
+ ```
178
+ CODE_STYLE.md # Coding standards
179
+ configs/inversify.types.ts # Existing class registry
180
+ configs/inversify.config.ts # Existing DI bindings
181
+ constants/TIMEOUT_CONSTANTS.ts # Available timeout constants
182
+ ```
183
+
184
+ Also read 1-2 existing specs and page objects similar to what you're generating, to match the exact style.
185
+
186
+ #### Step 4.2: Generate Page Objects (if needed)
187
+
188
+ For each new page or component that needs interaction, create a page object:
189
+
190
+ **File:** `pageobjects/<category>/NewPage.ts`
191
+
192
+ ```typescript
193
+ /** *******************************************************************
194
+ * copyright (c) 2026 Red Hat, Inc.
195
+ *
196
+ * This program and the accompanying materials are made
197
+ * available under the terms of the Eclipse Public License 2.0
198
+ * which is available at https://www.eclipse.org/legal/epl-2.0/
199
+ *
200
+ * SPDX-License-Identifier: EPL-2.0
201
+ **********************************************************************/
202
+
203
+ import { inject, injectable } from 'inversify';
204
+ import 'reflect-metadata';
205
+ import { By } from 'selenium-webdriver';
206
+ import { CLASSES } from '../../configs/inversify.types';
207
+ import { DriverHelper } from '../../utils/DriverHelper';
208
+ import { Logger } from '../../utils/Logger';
209
+ import { TIMEOUT_CONSTANTS } from '../../constants/TIMEOUT_CONSTANTS';
210
+
211
+ @injectable()
212
+ export class NewPage {
213
+ private static readonly ELEMENT_LOCATOR: By = By.xpath('//...');
214
+
215
+ constructor(@inject(CLASSES.DriverHelper) private readonly driverHelper: DriverHelper) {}
216
+
217
+ async waitPage(timeout: number = TIMEOUT_CONSTANTS.TS_COMMON_DASHBOARD_WAIT_TIMEOUT): Promise<void> {
218
+ Logger.debug();
219
+ await this.driverHelper.waitVisibility(NewPage.ELEMENT_LOCATOR, timeout);
220
+ }
221
+
222
+ private getDynamicLocator(name: string): By {
223
+ return By.xpath(`//div[text()="${name}"]`);
224
+ }
225
+ }
226
+ ```
227
+
228
+ **Rules for page objects:**
229
+
230
+ - `@injectable()` decorator on the class
231
+ - `Logger.debug()` at the start of every public method
232
+ - Static locators as `private static readonly NAME: By`
233
+ - Dynamic locators as `private` methods returning `By`
234
+ - Constructor injection with `@inject()` decorators
235
+ - Explicit return types on ALL methods
236
+ - NO `public` keyword on public methods
237
+ - Use XPath as primary locator strategy (matching existing patterns)
238
+ - Use timeout constants from `TIMEOUT_CONSTANTS`, not hardcoded values
239
+
240
+ #### Step 4.3: Generate Test Spec
241
+
242
+ **File:** `specs/<category>/NewFeature.spec.ts`
243
+
244
+ ```typescript
245
+ /** *******************************************************************
246
+ * copyright (c) 2026 Red Hat, Inc.
247
+ *
248
+ * This program and the accompanying materials are made
249
+ * available under the terms of the Eclipse Public License 2.0
250
+ * which is available at https://www.eclipse.org/legal/epl-2.0/
251
+ *
252
+ * SPDX-License-Identifier: EPL-2.0
253
+ **********************************************************************/
254
+
255
+ import { e2eContainer } from '../../configs/inversify.config';
256
+ import { CLASSES, TYPES } from '../../configs/inversify.types';
257
+ import { LoginTests } from '../../tests-library/LoginTests';
258
+ import { WorkspaceHandlingTests } from '../../tests-library/WorkspaceHandlingTests';
259
+ import { BASE_TEST_CONSTANTS } from '../../constants/BASE_TEST_CONSTANTS';
260
+ // ... other imports
261
+
262
+ suite(`New Feature ${BASE_TEST_CONSTANTS.TEST_ENVIRONMENT}`, function (): void {
263
+ const loginTests: LoginTests = e2eContainer.get(CLASSES.LoginTests);
264
+ // ... other DI injections
265
+
266
+ suiteSetup('Login', async function (): Promise<void> {
267
+ await loginTests.loginIntoChe();
268
+ });
269
+
270
+ test('Test case description', async function (): Promise<void> {
271
+ // test implementation
272
+ });
273
+
274
+ suiteTeardown('Cleanup', async function (): Promise<void> {
275
+ // cleanup code
276
+ });
277
+ });
278
+ ```
279
+
280
+ **Rules for test specs:**
281
+
282
+ - Mocha TDD style: `suite()`, `test()`, `suiteSetup()`, `suiteTeardown()`
283
+ - NEVER use arrow functions in Mocha declarations
284
+ - Get DI instances inside `suite()` function body
285
+ - Always include login in `suiteSetup`
286
+ - Always include cleanup in `suiteTeardown`
287
+ - Use `function (): void` (not arrow functions) for all callbacks
288
+
289
+ #### Step 4.4: Register New Components
290
+
291
+ If you created new page objects, update:
292
+
293
+ 1. **`configs/inversify.types.ts`** - Add class name to `CLASSES` object
294
+ 2. **`configs/inversify.config.ts`** - Add import and `e2eContainer.bind<>()` call
295
+
296
+ #### Step 4.5: Generate Polarion Test Case Markdown (optional)
297
+
298
+ If the user wants test cases synced to Polarion, also generate markdown files in the test-cases repo:
299
+
300
+ **File:** `<test-cases-repo>/tests/<functional|operational>/<category>/<id>-<title>.md`
301
+
302
+ ```yaml
303
+ ---
304
+ arch:
305
+ - value: x86_64
306
+ assignee: <ask user>
307
+ caseposneg: positive | negative
308
+ caseautomation: automated
309
+ caseimportance: high | medium | low
310
+ customerscenario: false
311
+ estimate: 1h
312
+ ---
313
+ # <ID> - <Test Title>
314
+
315
+ ## Description
316
+ - Test script: <link to the generated spec file in GitHub>
317
+ ```
318
+
319
+ Use the test-cases repo's `npm run rename` to validate filenames after generating.
320
+
321
+ ### Phase 5: Validate
322
+
323
+ After generating all code:
324
+
325
+ 1. **Run TypeScript compilation**: `npm run tsc` to catch type errors
326
+ 2. **Run linter**: `npm run lint` to catch style violations
327
+ 3. **Run prettier**: `npm run prettier` to fix formatting
328
+ 4. **Review the generated code** against `CODE_STYLE.md` rules
329
+ 5. **Present a summary** to the user:
330
+ - List of files created/modified
331
+ - Test cases and their priorities
332
+ - Any manual steps needed (e.g., running the tests, updating Polarion)
333
+
334
+ ## Locator Strategy Guide
335
+
336
+ When translating Playwright MCP snapshot elements to Selenium locators:
337
+
338
+ | Playwright Snapshot | Selenium Locator |
339
+ | ------------------------------ | --------------------------------------------------------- |
340
+ | `role="button" name="Create"` | `By.xpath('//button[text()="Create"]')` |
341
+ | `role="textbox" name="URL"` | `By.xpath('//input[@aria-label="URL"]')` |
342
+ | `role="link" name="Settings"` | `By.xpath('//a[text()="Settings"]')` |
343
+ | `role="tab" name="Git Repo"` | `By.xpath('//button[@role="tab" and text()="Git Repo"]')` |
344
+ | `data-testid="workspace-name"` | `By.css('[data-testid="workspace-name"]')` |
345
+ | `id="input-field"` | `By.id('input-field')` |
346
+
347
+ **Prefer this locator priority:**
348
+
349
+ 1. `data-testid` attributes (most stable)
350
+ 2. `id` attributes
351
+ 3. XPath with text content (for buttons, links)
352
+ 4. XPath with `aria-label` (for inputs, form fields)
353
+ 5. XPath with structural path (last resort — fragile)
354
+
355
+ ## Example Invocations
356
+
357
+ ```
358
+ explore and generate tests for /#/create-workspace
359
+ explore /#/user-preferences and write E2E tests for the settings page
360
+ generate tests for the new workspace sharing feature at /#/workspaces
361
+ ```
package/.mcp.json ADDED
@@ -0,0 +1,10 @@
1
+ {
2
+ "mcpServers": {
3
+ "playwright": {
4
+ "type": "stdio",
5
+ "command": "npx",
6
+ "args": ["@playwright/mcp@latest", "--ignore-https-errors", "--browser-args=--ignore-certificate-errors"],
7
+ "env": {}
8
+ }
9
+ }
10
+ }
@@ -62,6 +62,7 @@ import { ExplorerView } from '../pageobjects/ide/ExplorerView';
62
62
  import { NotificationHandler } from '../pageobjects/ide/NotificationHandler';
63
63
  import { SourceControlView } from '../pageobjects/ide/SourceControlView';
64
64
  import { GitHubExtensionDialog } from '../pageobjects/ide/GitHubExtensionDialog';
65
+ import { AiCodeSignInDialog } from '../pageobjects/ide/AiCodeSignInDialog';
65
66
 
66
67
  const e2eContainer: Container = new Container({ defaultScope: 'Transient', skipBaseClassChecks: true });
67
68
 
@@ -109,6 +110,7 @@ e2eContainer.bind<ExplorerView>(CLASSES.ExplorerView).to(ExplorerView);
109
110
  e2eContainer.bind<NotificationHandler>(CLASSES.NotificationHandler).to(NotificationHandler);
110
111
  e2eContainer.bind<SourceControlView>(CLASSES.SourceControlView).to(SourceControlView);
111
112
  e2eContainer.bind<GitHubExtensionDialog>(CLASSES.GitHubExtensionDialog).to(GitHubExtensionDialog);
113
+ e2eContainer.bind<AiCodeSignInDialog>(CLASSES.AiCodeSignInDialog).to(AiCodeSignInDialog);
112
114
 
113
115
  if (BASE_TEST_CONSTANTS.TS_PLATFORM === Platform.OPENSHIFT) {
114
116
  if (OAUTH_CONSTANTS.TS_SELENIUM_VALUE_OPENSHIFT_OAUTH) {
@@ -59,7 +59,8 @@ const CLASSES: any = {
59
59
  ExplorerView: 'ExplorerView',
60
60
  NotificationHandler: 'NotificationHandler',
61
61
  SourceControlView: 'SourceControlView',
62
- GitHubExtensionDialog: 'GitHubExtensionDialog'
62
+ GitHubExtensionDialog: 'GitHubExtensionDialog',
63
+ AiCodeSignInDialog: 'AiCodeSignInDialog'
63
64
  };
64
65
 
65
66
  const EXTERNAL_CLASSES: any = {
@@ -59,6 +59,7 @@ const ExplorerView_1 = require("../pageobjects/ide/ExplorerView");
59
59
  const NotificationHandler_1 = require("../pageobjects/ide/NotificationHandler");
60
60
  const SourceControlView_1 = require("../pageobjects/ide/SourceControlView");
61
61
  const GitHubExtensionDialog_1 = require("../pageobjects/ide/GitHubExtensionDialog");
62
+ const AiCodeSignInDialog_1 = require("../pageobjects/ide/AiCodeSignInDialog");
62
63
  const e2eContainer = new inversify_1.Container({ defaultScope: 'Transient', skipBaseClassChecks: true });
63
64
  exports.e2eContainer = e2eContainer;
64
65
  e2eContainer.bind(inversify_types_1.TYPES.Driver).to(ChromeDriver_1.ChromeDriver).inSingletonScope();
@@ -105,6 +106,7 @@ e2eContainer.bind(inversify_types_1.CLASSES.ExplorerView).to(ExplorerView_1.Expl
105
106
  e2eContainer.bind(inversify_types_1.CLASSES.NotificationHandler).to(NotificationHandler_1.NotificationHandler);
106
107
  e2eContainer.bind(inversify_types_1.CLASSES.SourceControlView).to(SourceControlView_1.SourceControlView);
107
108
  e2eContainer.bind(inversify_types_1.CLASSES.GitHubExtensionDialog).to(GitHubExtensionDialog_1.GitHubExtensionDialog);
109
+ e2eContainer.bind(inversify_types_1.CLASSES.AiCodeSignInDialog).to(AiCodeSignInDialog_1.AiCodeSignInDialog);
108
110
  if (BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TS_PLATFORM === BASE_TEST_CONSTANTS_1.Platform.OPENSHIFT) {
109
111
  if (OAUTH_CONSTANTS_1.OAUTH_CONSTANTS.TS_SELENIUM_VALUE_OPENSHIFT_OAUTH) {
110
112
  e2eContainer.bind(inversify_types_1.TYPES.CheLogin).to(RegularUserOcpCheLoginPage_1.RegularUserOcpCheLoginPage);
@@ -1 +1 @@
1
- {"version":3,"file":"inversify.config.js","sourceRoot":"","sources":["../../configs/inversify.config.ts"],"names":[],"mappings":";AAAA;;;;;;;;wEAQwE;;;AAExE,4BAA0B;AAC1B,yCAAsC;AAEtC,yDAAsD;AACtD,uDAAqE;AACrE,4EAAyE;AAEzE,sFAAmF;AAEnF,0GAAuG;AACvG,wDAAqD;AACrD,kEAA+D;AAC/D,oEAAiE;AACjE,kGAA+F;AAC/F,0DAAuD;AACvD,8EAA2E;AAE3E,qIAAkI;AAClI,yFAAsF;AACtF,8EAA2E;AAC3E,8DAA2D;AAC3D,oFAAiF;AACjF,sEAAmE;AAEnE,8EAA2E;AAC3E,4DAAyD;AACzD,oFAAiF;AACjF,0FAAuF;AACvF,sEAAmE;AACnE,wFAAqF;AACrF,oFAAiF;AACjF,oDAAiD;AACjD,6FAA0F;AAC1F,+EAA4E;AAC5E,kEAA+D;AAC/D,0EAAiF;AACjF,kFAA+E;AAC/E,oEAAwE;AACxE,sEAAmE;AACnE,4DAAyD;AACzD,2EAAqF;AACrF,oGAAoH;AACpH,0DAAuD;AACvD,8EAA2E;AAC3E,gFAA6E;AAC7E,gFAA6E;AAC7E,sFAAmF;AACnF,kFAA+E;AAC/E,sEAAmE;AACnE,sEAAmE;AACnE,kEAA+D;AAC/D,gFAA6E;AAC7E,4EAAyE;AACzE,oFAAiF;AAEjF,MAAM,YAAY,GAAc,IAAI,qBAAS,CAAC,EAAE,YAAY,EAAE,WAAW,EAAE,mBAAmB,EAAE,IAAI,EAAE,CAAC,CAAC;AAyD/F,oCAAY;AAvDrB,YAAY,CAAC,IAAI,CAAU,uBAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,2BAAY,CAAC,CAAC,gBAAgB,EAAE,CAAC;AAC7E,YAAY,CAAC,IAAI,CAAqB,uBAAK,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,qCAAiB,CAAC,CAAC;AACjF,YAAY,CAAC,IAAI,CAAgB,uBAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,mCAAgB,CAAC,CAAC;AACtE,YAAY,CAAC,IAAI,CAA8B,uBAAK,CAAC,2BAA2B,CAAC,CAAC,EAAE,CAAC,+EAAsC,CAAC,CAAC;AAC7H,YAAY,CAAC,IAAI,CAAkB,yBAAO,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC,iCAAe,CAAC,CAAC;AAChF,YAAY,CAAC,IAAI,CAAe,yBAAO,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,2BAAY,CAAC,CAAC;AACvE,YAAY,CAAC,IAAI,CAAY,yBAAO,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,qBAAS,CAAC,CAAC;AAC9D,YAAY,CAAC,IAAI,CAAa,yBAAO,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,uBAAU,CAAC,CAAC;AACjE,YAAY,CAAC,IAAI,CAAmB,yBAAO,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC,mCAAgB,CAAC,CAAC;AACnF,YAAY,CAAC,IAAI,CAAgB,yBAAO,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,6BAAa,CAAC,CAAC;AAC1E,YAAY,CAAC,IAAI,CAAe,yBAAO,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,2BAAY,CAAC,CAAC;AACvE,YAAY,CAAC,IAAI,CAAe,yBAAO,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,2BAAY,CAAC,CAAC;AACvE,YAAY,CAAC,IAAI,CAAuB,yBAAO,CAAC,oBAAoB,CAAC,CAAC,EAAE,CAAC,2CAAoB,CAAC,CAAC;AAC/F,YAAY,CAAC,IAAI,CAAgB,yBAAO,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,sBAAa,CAAC,CAAC;AAC1E,YAAY,CAAC,IAAI,CAAY,yBAAO,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,qBAAS,CAAC,CAAC;AAC9D,YAAY,CAAC,IAAI,CAAc,yBAAO,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,yBAAW,CAAC,CAAC;AACpE,YAAY,CAAC,IAAI,CAAuB,yBAAO,CAAC,oBAAoB,CAAC,CAAC,EAAE,CAAC,2CAAoB,CAAC,CAAC;AAC/F,YAAY,CAAC,IAAI,CAAqB,yBAAO,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,uCAAkB,CAAC,CAAC;AACzF,YAAY,CAAC,IAAI,CAAuB,yBAAO,CAAC,oBAAoB,CAAC,CAAC,EAAE,CAAC,2CAAoB,CAAC,CAAC;AAC/F,YAAY,CAAC,IAAI,CAAkB,yBAAO,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC,iCAAe,CAAC,CAAC;AAChF,YAAY,CAAC,IAAI,CAAsB,yBAAO,CAAC,mBAAmB,CAAC,CAAC,EAAE,CAAC,yCAAmB,CAAC,CAAC;AAC5F,YAAY,CAAC,IAAI,CAAa,yBAAO,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,uBAAU,CAAC,CAAC;AACjE,YAAY,CAAC,IAAI,CAAa,yBAAO,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,uBAAU,CAAC,CAAC;AACjE,YAAY,CAAC,IAAI,CAAiB,yBAAO,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,+BAAc,CAAC,CAAC;AAC7E,YAAY,CAAC,IAAI,CAAyB,yBAAO,CAAC,sBAAsB,CAAC,CAAC,EAAE,CAAC,+CAAsB,CAAC,CAAC;AACrG,YAAY,CAAC,IAAI,CAAkB,yBAAO,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC,iCAAe,CAAC,CAAC;AAChF,YAAY,CAAC,IAAI,CAAiB,yBAAO,CAAC,sBAAsB,CAAC,CAAC,EAAE,CAAC,+BAAc,CAAC,CAAC;AACrF,YAAY,CAAC,IAAI,CAAqC,yBAAO,CAAC,kCAAkC,CAAC,CAAC,EAAE,CAAC,uEAAkC,CAAC,CAAC;AACzI,YAAY,CAAC,IAAI,CAAgB,yBAAO,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,6BAAa,CAAC,CAAC;AAC1E,YAAY,CAAC,IAAI,CAAoB,yBAAO,CAAC,iBAAiB,CAAC,CAAC,EAAE,CAAC,sDAAiB,CAAC,CAAC;AACtF,YAAY,CAAC,IAAI,CAAkB,yBAAO,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC,iCAAe,CAAC,CAAC;AAChF,YAAY,CAAC,IAAI,CAAkB,yBAAO,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC,iCAAe,CAAC,CAAC;AAChF,YAAY,CAAC,IAAI,CAAY,kCAAgB,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,WAAS,CAAC,CAAC;AACvE,YAAY,CAAC,IAAI,CAAgB,kCAAgB,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,sBAAa,CAAC,CAAC;AACnF,YAAY,CAAC,IAAI,CAAgB,kCAAgB,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,sBAAa,CAAC,CAAC;AACnF,YAAY,CAAC,IAAI,CAAmB,yBAAO,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC,mCAAgB,CAAC,CAAC;AACnF,YAAY,CAAC,IAAI,CAAyB,yBAAO,CAAC,sBAAsB,CAAC,CAAC,EAAE,CAAC,+CAAsB,CAAC,CAAC;AACrG,YAAY,CAAC,IAAI,CAAuB,yBAAO,CAAC,oBAAoB,CAAC,CAAC,EAAE,CAAC,2CAAoB,CAAC,CAAC;AAC/F,YAAY,CAAC,IAAI,CAAiB,yBAAO,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,+BAAc,CAAC,CAAC;AAC7E,YAAY,CAAC,IAAI,CAAiB,yBAAO,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,+BAAc,CAAC,CAAC;AAC7E,YAAY,CAAC,IAAI,CAAe,yBAAO,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,2BAAY,CAAC,CAAC;AACvE,YAAY,CAAC,IAAI,CAAsB,yBAAO,CAAC,mBAAmB,CAAC,CAAC,EAAE,CAAC,yCAAmB,CAAC,CAAC;AAC5F,YAAY,CAAC,IAAI,CAAoB,yBAAO,CAAC,iBAAiB,CAAC,CAAC,EAAE,CAAC,qCAAiB,CAAC,CAAC;AACtF,YAAY,CAAC,IAAI,CAAwB,yBAAO,CAAC,qBAAqB,CAAC,CAAC,EAAE,CAAC,6CAAqB,CAAC,CAAC;AAElG,IAAI,yCAAmB,CAAC,WAAW,KAAK,8BAAQ,CAAC,SAAS,EAAE;IAC3D,IAAI,iCAAe,CAAC,iCAAiC,EAAE;QACtD,YAAY,CAAC,IAAI,CAAgB,uBAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,uDAA0B,CAAC,CAAC;KAChF;SAAM;QACN,YAAY,CAAC,IAAI,CAAgB,uBAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,uCAAkB,CAAC,CAAC;KACxE;CACD;KAAM;IACN,YAAY,CAAC,IAAI,CAAgB,uBAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,yCAAmB,CAAC,CAAC;CACzE"}
1
+ {"version":3,"file":"inversify.config.js","sourceRoot":"","sources":["../../configs/inversify.config.ts"],"names":[],"mappings":"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"}
@@ -61,7 +61,8 @@ const CLASSES = {
61
61
  ExplorerView: 'ExplorerView',
62
62
  NotificationHandler: 'NotificationHandler',
63
63
  SourceControlView: 'SourceControlView',
64
- GitHubExtensionDialog: 'GitHubExtensionDialog'
64
+ GitHubExtensionDialog: 'GitHubExtensionDialog',
65
+ AiCodeSignInDialog: 'AiCodeSignInDialog'
65
66
  };
66
67
  exports.CLASSES = CLASSES;
67
68
  const EXTERNAL_CLASSES = {
@@ -1 +1 @@
1
- {"version":3,"file":"inversify.types.js","sourceRoot":"","sources":["../../configs/inversify.types.ts"],"names":[],"mappings":";AAAA;;;;;;;;wEAQwE;;;AAExE,MAAM,KAAK,GAAQ;IAClB,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC;IAChC,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC;IAChC,aAAa,EAAE,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC;IAC1C,2BAA2B,EAAE,MAAM,CAAC,GAAG,CAAC,6BAA6B,CAAC;IACtE,aAAa,EAAE,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC;IAC1C,mCAAmC,EAAE,MAAM,CAAC,GAAG,CAAC,qCAAqC,CAAC;IACtF,cAAc,EAAE,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC;CAC5C,CAAC;AAkDO,sBAAK;AAhDd,MAAM,OAAO,GAAQ;IACpB,YAAY,EAAE,cAAc;IAC5B,SAAS,EAAE,WAAW;IACtB,UAAU,EAAE,YAAY;IACxB,gBAAgB,EAAE,kBAAkB;IACpC,aAAa,EAAE,eAAe;IAC9B,YAAY,EAAE,cAAc;IAC5B,oBAAoB,EAAE,sBAAsB;IAC5C,eAAe,EAAE,iBAAiB;IAClC,eAAe,EAAE,iBAAiB;IAClC,mBAAmB,EAAE,qBAAqB;IAC1C,UAAU,EAAE,YAAY;IACxB,cAAc,EAAE,gBAAgB;IAChC,UAAU,EAAE,YAAY;IACxB,sBAAsB,EAAE,wBAAwB;IAChD,eAAe,EAAE,iBAAiB;IAClC,mBAAmB,EAAE,qBAAqB;IAC1C,YAAY,EAAE,cAAc;IAC5B,kBAAkB,EAAE,oBAAoB;IACxC,kBAAkB,EAAE,oBAAoB;IACxC,WAAW,EAAE,aAAa;IAC1B,oBAAoB,EAAE,sBAAsB;IAC5C,oBAAoB,EAAE,sBAAsB;IAC5C,aAAa,EAAE,eAAe;IAC9B,SAAS,EAAE,WAAW;IACtB,sBAAsB,EAAE,wBAAwB;IAChD,kCAAkC,EAAE,oCAAoC;IACxE,aAAa,EAAE,eAAe;IAC9B,iBAAiB,EAAE,mBAAmB;IACtC,eAAe,EAAE,iBAAiB;IAClC,eAAe,EAAE,iBAAiB;IAClC,eAAe,EAAE,iBAAiB;IAClC,gBAAgB,EAAE,kBAAkB;IACpC,sBAAsB,EAAE,wBAAwB;IAChD,oBAAoB,EAAE,sBAAsB;IAC5C,cAAc,EAAE,gBAAgB;IAChC,cAAc,EAAE,gBAAgB;IAChC,YAAY,EAAE,cAAc;IAC5B,mBAAmB,EAAE,qBAAqB;IAC1C,iBAAiB,EAAE,mBAAmB;IACtC,qBAAqB,EAAE,uBAAuB;CAC9C,CAAC;AAOc,0BAAO;AALvB,MAAM,gBAAgB,GAAQ;IAC7B,SAAS,EAAE,WAAW;IACtB,aAAa,EAAE,eAAe;CAC9B,CAAC;AAEuB,4CAAgB"}
1
+ {"version":3,"file":"inversify.types.js","sourceRoot":"","sources":["../../configs/inversify.types.ts"],"names":[],"mappings":";AAAA;;;;;;;;wEAQwE;;;AAExE,MAAM,KAAK,GAAQ;IAClB,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC;IAChC,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC;IAChC,aAAa,EAAE,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC;IAC1C,2BAA2B,EAAE,MAAM,CAAC,GAAG,CAAC,6BAA6B,CAAC;IACtE,aAAa,EAAE,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC;IAC1C,mCAAmC,EAAE,MAAM,CAAC,GAAG,CAAC,qCAAqC,CAAC;IACtF,cAAc,EAAE,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC;CAC5C,CAAC;AAmDO,sBAAK;AAjDd,MAAM,OAAO,GAAQ;IACpB,YAAY,EAAE,cAAc;IAC5B,SAAS,EAAE,WAAW;IACtB,UAAU,EAAE,YAAY;IACxB,gBAAgB,EAAE,kBAAkB;IACpC,aAAa,EAAE,eAAe;IAC9B,YAAY,EAAE,cAAc;IAC5B,oBAAoB,EAAE,sBAAsB;IAC5C,eAAe,EAAE,iBAAiB;IAClC,eAAe,EAAE,iBAAiB;IAClC,mBAAmB,EAAE,qBAAqB;IAC1C,UAAU,EAAE,YAAY;IACxB,cAAc,EAAE,gBAAgB;IAChC,UAAU,EAAE,YAAY;IACxB,sBAAsB,EAAE,wBAAwB;IAChD,eAAe,EAAE,iBAAiB;IAClC,mBAAmB,EAAE,qBAAqB;IAC1C,YAAY,EAAE,cAAc;IAC5B,kBAAkB,EAAE,oBAAoB;IACxC,kBAAkB,EAAE,oBAAoB;IACxC,WAAW,EAAE,aAAa;IAC1B,oBAAoB,EAAE,sBAAsB;IAC5C,oBAAoB,EAAE,sBAAsB;IAC5C,aAAa,EAAE,eAAe;IAC9B,SAAS,EAAE,WAAW;IACtB,sBAAsB,EAAE,wBAAwB;IAChD,kCAAkC,EAAE,oCAAoC;IACxE,aAAa,EAAE,eAAe;IAC9B,iBAAiB,EAAE,mBAAmB;IACtC,eAAe,EAAE,iBAAiB;IAClC,eAAe,EAAE,iBAAiB;IAClC,eAAe,EAAE,iBAAiB;IAClC,gBAAgB,EAAE,kBAAkB;IACpC,sBAAsB,EAAE,wBAAwB;IAChD,oBAAoB,EAAE,sBAAsB;IAC5C,cAAc,EAAE,gBAAgB;IAChC,cAAc,EAAE,gBAAgB;IAChC,YAAY,EAAE,cAAc;IAC5B,mBAAmB,EAAE,qBAAqB;IAC1C,iBAAiB,EAAE,mBAAmB;IACtC,qBAAqB,EAAE,uBAAuB;IAC9C,kBAAkB,EAAE,oBAAoB;CACxC,CAAC;AAOc,0BAAO;AALvB,MAAM,gBAAgB,GAAQ;IAC7B,SAAS,EAAE,WAAW;IACtB,aAAa,EAAE,eAAe;CAC9B,CAAC;AAEuB,4CAAgB"}
package/dist/index.js CHANGED
@@ -58,6 +58,7 @@ __exportStar(require("./pageobjects/dashboard/UserPreferences"), exports);
58
58
  __exportStar(require("./pageobjects/dashboard/Workspaces"), exports);
59
59
  __exportStar(require("./pageobjects/dashboard/workspace-details/WorkspaceDetails"), exports);
60
60
  __exportStar(require("./pageobjects/git-providers/OauthPage"), exports);
61
+ __exportStar(require("./pageobjects/ide/AiCodeSignInDialog"), exports);
61
62
  __exportStar(require("./pageobjects/ide/CheCodeLocatorLoader"), exports);
62
63
  __exportStar(require("./pageobjects/ide/CommandPalette"), exports);
63
64
  __exportStar(require("./pageobjects/ide/ExplorerView"), exports);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,4EAA8D;AACrD,0CAAe;AACxB,4DAA0C;AAC1C,oDAAkC;AAClC,wDAAsC;AACtC,mDAAiC;AACjC,0DAAwC;AACxC,0EAAwD;AACxD,yDAAuC;AACvC,uDAAqC;AACrC,yDAAuC;AACvC,8EAA4D;AAC5D,6EAA2D;AAC3D,iDAA+B;AAC/B,wDAAsC;AACtC,wDAAsC;AACtC,qDAAmC;AACnC,gFAA8D;AAC9D,0GAAwF;AACxF,+FAA6E;AAC7E,mEAAiD;AACjD,uEAAqD;AACrD,sEAAoD;AACpD,oEAAkD;AAClD,0EAAwD;AACxD,oEAAkD;AAClD,2EAAyD;AACzD,0EAAwD;AACxD,qEAAmD;AACnD,6FAA2E;AAC3E,wEAAsD;AACtD,yEAAuD;AACvD,mEAAiD;AACjD,iEAA+C;AAC/C,mEAAiD;AACjD,0EAAwD;AACxD,wEAAsD;AACtD,yEAAuD;AACvD,sEAAoD;AACpD,2EAAyD;AACzD,+EAA6D;AAC7D,+EAA6D;AAC7D,8EAA4D;AAC5D,qFAAmE;AACnE,6EAA2D;AAC3D,mFAAiE;AACjE,iFAA+D;AAC/D,gFAA8D;AAC9D,2FAAyE;AACzE,6EAA2D;AAC3D,+EAA6D;AAC7D,sEAAoD;AACpD,4EAA0D;AAC1D,6DAA2C;AAC3C,sEAAoD;AACpD,yEAAuD;AACvD,iEAA+C;AAC/C,kEAAgD;AAChD,sEAAoD;AACpD,+DAA6C;AAC7C,qEAAmD;AACnD,8DAA4C;AAC5C,+DAA6C;AAC7C,8DAA4C;AAC5C,oEAAkD;AAClD,iEAA+C;AAC/C,gEAA8C"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,4EAA8D;AACrD,0CAAe;AACxB,4DAA0C;AAC1C,oDAAkC;AAClC,wDAAsC;AACtC,mDAAiC;AACjC,0DAAwC;AACxC,0EAAwD;AACxD,yDAAuC;AACvC,uDAAqC;AACrC,yDAAuC;AACvC,8EAA4D;AAC5D,6EAA2D;AAC3D,iDAA+B;AAC/B,wDAAsC;AACtC,wDAAsC;AACtC,qDAAmC;AACnC,gFAA8D;AAC9D,0GAAwF;AACxF,+FAA6E;AAC7E,mEAAiD;AACjD,uEAAqD;AACrD,sEAAoD;AACpD,oEAAkD;AAClD,0EAAwD;AACxD,oEAAkD;AAClD,2EAAyD;AACzD,0EAAwD;AACxD,qEAAmD;AACnD,6FAA2E;AAC3E,wEAAsD;AACtD,uEAAqD;AACrD,yEAAuD;AACvD,mEAAiD;AACjD,iEAA+C;AAC/C,mEAAiD;AACjD,0EAAwD;AACxD,wEAAsD;AACtD,yEAAuD;AACvD,sEAAoD;AACpD,2EAAyD;AACzD,+EAA6D;AAC7D,+EAA6D;AAC7D,8EAA4D;AAC5D,qFAAmE;AACnE,6EAA2D;AAC3D,mFAAiE;AACjE,iFAA+D;AAC/D,gFAA8D;AAC9D,2FAAyE;AACzE,6EAA2D;AAC3D,+EAA6D;AAC7D,sEAAoD;AACpD,4EAA0D;AAC1D,6DAA2C;AAC3C,sEAAoD;AACpD,yEAAuD;AACvD,iEAA+C;AAC/C,kEAAgD;AAChD,sEAAoD;AACpD,+DAA6C;AAC7C,qEAAmD;AACnD,8DAA4C;AAC5C,+DAA6C;AAC7C,8DAA4C;AAC5C,oEAAkD;AAClD,iEAA+C;AAC/C,gEAA8C"}
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ var AiCodeSignInDialog_1;
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.AiCodeSignInDialog = void 0;
17
+ /** *******************************************************************
18
+ * copyright (c) 2025 Red Hat, Inc.
19
+ *
20
+ * This program and the accompanying materials are made
21
+ * available under the terms of the Eclipse Public License 2.0
22
+ * which is available at https://www.eclipse.org/legal/epl-2.0/
23
+ *
24
+ * SPDX-License-Identifier: EPL-2.0
25
+ **********************************************************************/
26
+ const inversify_1 = require("inversify");
27
+ require("reflect-metadata");
28
+ const inversify_types_1 = require("../../configs/inversify.types");
29
+ const DriverHelper_1 = require("../../utils/DriverHelper");
30
+ const Logger_1 = require("../../utils/Logger");
31
+ const monaco_page_objects_1 = require("monaco-page-objects");
32
+ let AiCodeSignInDialog = AiCodeSignInDialog_1 = class AiCodeSignInDialog {
33
+ constructor(driverHelper) {
34
+ this.driverHelper = driverHelper;
35
+ }
36
+ async isDialogVisible() {
37
+ Logger_1.Logger.debug();
38
+ return await this.driverHelper.waitVisibilityBoolean(AiCodeSignInDialog_1.OVERLAY_LOCATOR);
39
+ }
40
+ async closeDialog() {
41
+ Logger_1.Logger.debug();
42
+ await this.driverHelper.waitAndClick(AiCodeSignInDialog_1.SKIP_BUTTON_LOCATOR);
43
+ await this.driverHelper.waitDisappearance(AiCodeSignInDialog_1.OVERLAY_LOCATOR);
44
+ Logger_1.Logger.debug('AI-powered development sign in dialog skipped');
45
+ }
46
+ };
47
+ AiCodeSignInDialog.OVERLAY_LOCATOR = monaco_page_objects_1.By.css('div.onboarding-a-overlay.visible');
48
+ AiCodeSignInDialog.SKIP_BUTTON_LOCATOR = monaco_page_objects_1.By.css('div.onboarding-a-overlay button.onboarding-a-btn-ghost');
49
+ AiCodeSignInDialog = AiCodeSignInDialog_1 = __decorate([
50
+ (0, inversify_1.injectable)(),
51
+ __param(0, (0, inversify_1.inject)(inversify_types_1.CLASSES.DriverHelper)),
52
+ __metadata("design:paramtypes", [DriverHelper_1.DriverHelper])
53
+ ], AiCodeSignInDialog);
54
+ exports.AiCodeSignInDialog = AiCodeSignInDialog;
55
+ //# sourceMappingURL=AiCodeSignInDialog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AiCodeSignInDialog.js","sourceRoot":"","sources":["../../../pageobjects/ide/AiCodeSignInDialog.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA;;;;;;;;wEAQwE;AACxE,yCAA+C;AAC/C,4BAA0B;AAC1B,mEAAwD;AACxD,2DAAwD;AACxD,+CAA4C;AAC5C,6DAAyC;AAGlC,IAAM,kBAAkB,0BAAxB,MAAM,kBAAkB;IAI9B,YAEkB,YAA0B;QAA1B,iBAAY,GAAZ,YAAY,CAAc;IACzC,CAAC;IAEJ,KAAK,CAAC,eAAe;QACpB,eAAM,CAAC,KAAK,EAAE,CAAC;QAEf,OAAO,MAAM,IAAI,CAAC,YAAY,CAAC,qBAAqB,CAAC,oBAAkB,CAAC,eAAe,CAAC,CAAC;IAC1F,CAAC;IAED,KAAK,CAAC,WAAW;QAChB,eAAM,CAAC,KAAK,EAAE,CAAC;QAEf,MAAM,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,oBAAkB,CAAC,mBAAmB,CAAC,CAAC;QAC7E,MAAM,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,oBAAkB,CAAC,eAAe,CAAC,CAAC;QAC9E,eAAM,CAAC,KAAK,CAAC,+CAA+C,CAAC,CAAC;IAC/D,CAAC;;AApBuB,kCAAe,GAAO,wBAAE,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;AACjE,sCAAmB,GAAO,wBAAE,CAAC,GAAG,CAAC,wDAAwD,CAAC,CAAC;AAFvG,kBAAkB;IAD9B,IAAA,sBAAU,GAAE;IAMV,WAAA,IAAA,kBAAM,EAAC,yBAAO,CAAC,YAAY,CAAC,CAAA;qCACE,2BAAY;GANhC,kBAAkB,CAsB9B;AAtBY,gDAAkB"}
@@ -33,12 +33,14 @@ const CheCodeLocatorLoader_1 = require("../pageobjects/ide/CheCodeLocatorLoader"
33
33
  const monaco_page_objects_1 = require("monaco-page-objects");
34
34
  const WorkspaceHandlingTests_1 = require("../tests-library/WorkspaceHandlingTests");
35
35
  const RestrictedModeButton_1 = require("../pageobjects/ide/RestrictedModeButton");
36
+ const AiCodeSignInDialog_1 = require("../pageobjects/ide/AiCodeSignInDialog");
36
37
  let ProjectAndFileTests = ProjectAndFileTests_1 = class ProjectAndFileTests {
37
- constructor(driverHelper, cheCodeLocatorLoader, workspaceHandlingTests, restrictedModeButton) {
38
+ constructor(driverHelper, cheCodeLocatorLoader, workspaceHandlingTests, restrictedModeButton, aiCodeSignInDialog) {
38
39
  this.driverHelper = driverHelper;
39
40
  this.cheCodeLocatorLoader = cheCodeLocatorLoader;
40
41
  this.workspaceHandlingTests = workspaceHandlingTests;
41
42
  this.restrictedModeButton = restrictedModeButton;
43
+ this.aiCodeSignInDialog = aiCodeSignInDialog;
42
44
  }
43
45
  async waitWorkspaceReadinessForCheCodeEditor() {
44
46
  Logger_1.Logger.debug('waiting for editor.');
@@ -47,6 +49,7 @@ let ProjectAndFileTests = ProjectAndFileTests_1 = class ProjectAndFileTests {
47
49
  await this.driverHelper.waitVisibility(this.cheCodeLocatorLoader.webCheCodeLocators.Workbench.constructor, TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_IDE_START_TIMEOUT);
48
50
  const end = new Date().getTime();
49
51
  Logger_1.Logger.debug(`editor was opened in ${end - start} seconds.`);
52
+ await this.dismissAiCodeSignInDialog();
50
53
  }
51
54
  catch (err) {
52
55
  Logger_1.Logger.error(`waiting for workspace readiness failed: ${err}`);
@@ -97,6 +100,20 @@ let ProjectAndFileTests = ProjectAndFileTests_1 = class ProjectAndFileTests {
97
100
  Logger_1.Logger.info('"Do you trust the publisher?" dialog box was not shown');
98
101
  }
99
102
  }
103
+ /**
104
+ * dismiss 'Sign in to continue with AI-powered development' dialog, when it appears
105
+ */
106
+ async dismissAiCodeSignInDialog() {
107
+ Logger_1.Logger.debug();
108
+ try {
109
+ if (await this.aiCodeSignInDialog.isDialogVisible()) {
110
+ await this.aiCodeSignInDialog.closeDialog();
111
+ }
112
+ }
113
+ catch (e) {
114
+ Logger_1.Logger.info('"Sign in to continue with AI-powered development" dialog was not shown');
115
+ }
116
+ }
100
117
  /**
101
118
  * perform to 'Trust' dialog boxes, when they appear
102
119
  */
@@ -192,10 +209,12 @@ ProjectAndFileTests = ProjectAndFileTests_1 = __decorate([
192
209
  __param(1, (0, inversify_1.inject)(inversify_types_1.CLASSES.CheCodeLocatorLoader)),
193
210
  __param(2, (0, inversify_1.inject)(inversify_types_1.CLASSES.WorkspaceHandlingTests)),
194
211
  __param(3, (0, inversify_1.inject)(inversify_types_1.CLASSES.RestrictedModeButton)),
212
+ __param(4, (0, inversify_1.inject)(inversify_types_1.CLASSES.AiCodeSignInDialog)),
195
213
  __metadata("design:paramtypes", [DriverHelper_1.DriverHelper,
196
214
  CheCodeLocatorLoader_1.CheCodeLocatorLoader,
197
215
  WorkspaceHandlingTests_1.WorkspaceHandlingTests,
198
- RestrictedModeButton_1.RestrictedModeButton])
216
+ RestrictedModeButton_1.RestrictedModeButton,
217
+ AiCodeSignInDialog_1.AiCodeSignInDialog])
199
218
  ], ProjectAndFileTests);
200
219
  exports.ProjectAndFileTests = ProjectAndFileTests;
201
220
  //# sourceMappingURL=ProjectAndFileTests.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ProjectAndFileTests.js","sourceRoot":"","sources":["../../tests-library/ProjectAndFileTests.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ProjectAndFileTests.js","sourceRoot":"","sources":["../../tests-library/ProjectAndFileTests.ts"],"names":[],"mappings":";AAAA;;;;;;;;wEAQwE;;;;;;;;;;;;;;;;AAExE,4BAA0B;AAC1B,yCAA+C;AAC/C,wDAAqD;AACrD,gEAAqD;AACrD,4CAAyC;AACzC,sEAAmE;AACnE,kFAA+E;AAC/E,6DAAiH;AACjH,oFAAiF;AACjF,kFAA+E;AAC/E,8EAA2E;AAGpE,IAAM,mBAAmB,2BAAzB,MAAM,mBAAmB;IAI/B,YAEkB,YAA0B,EAE1B,oBAA0C,EAE1C,sBAA8C,EAE9C,oBAA0C,EAE1C,kBAAsC;QARtC,iBAAY,GAAZ,YAAY,CAAc;QAE1B,yBAAoB,GAApB,oBAAoB,CAAsB;QAE1C,2BAAsB,GAAtB,sBAAsB,CAAwB;QAE9C,yBAAoB,GAApB,oBAAoB,CAAsB;QAE1C,uBAAkB,GAAlB,kBAAkB,CAAoB;IACrD,CAAC;IAEJ,KAAK,CAAC,sCAAsC;QAC3C,eAAM,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;QACpC,IAAI;YACH,MAAM,KAAK,GAAW,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;YAC3C,MAAM,IAAI,CAAC,YAAY,CAAC,cAAc,CACrC,IAAI,CAAC,oBAAoB,CAAC,kBAAkB,CAAC,SAAS,CAAC,WAAW,EAClE,qCAAiB,CAAC,oBAAoB,CACtC,CAAC;YACF,MAAM,GAAG,GAAW,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;YACzC,eAAM,CAAC,KAAK,CAAC,wBAAwB,GAAG,GAAG,KAAK,WAAW,CAAC,CAAC;YAC7D,MAAM,IAAI,CAAC,yBAAyB,EAAE,CAAC;SACvC;QAAC,OAAO,GAAG,EAAE;YACb,eAAM,CAAC,KAAK,CAAC,2CAA2C,GAAG,EAAE,CAAC,CAAC;YAE/D,mDAAmD;YACnD,MAAM,IAAI,CAAC,sBAAsB,CAAC,qBAAqB,EAAE,CAAC;YAE1D,MAAM,GAAG,CAAC;SACV;IACF,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,wBAAwB;QAC7B,eAAM,CAAC,KAAK,EAAE,CAAC;QACf,yHAAyH;QACzH,MAAM,SAAS,GAAc,IAAI,+BAAS,EAAE,CAAC;QAE7C,IAAI;YACH,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;YACxB,oEAAoE;YACpE,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,qCAAiB,CAAC,mBAAmB,CAAC,CAAC;YACpE,MAAM,IAAI,CAAC,YAAY,CAAC,cAAc,CACrC,IAAI,CAAC,oBAAoB,CAAC,kBAAkB,CAAC,cAAc,CAAC,IAAI,EAChE,qCAAiB,CAAC,iCAAiC,CACnD,CAAC;YACF,MAAM,IAAI,CAAC,YAAY,CAAC,YAAY,CACnC,IAAI,CAAC,oBAAoB,CAAC,kBAAkB,CAAC,cAAc,CAAC,MAAM,EAClE,qCAAiB,CAAC,iCAAiC,CACnD,CAAC;YACF,MAAM,IAAI,CAAC,oBAAoB,CAAC,mCAAmC,EAAE,CAAC;SACtE;QAAC,OAAO,CAAC,EAAE;YACX,eAAM,CAAC,IAAI,CACV,qHAAqH,CACrH,CAAC;YAEF,IAAI;gBACH,MAAM,IAAI,CAAC,oBAAoB,CAAC,2BAA2B,EAAE,CAAC;gBAC9D,MAAM,IAAI,CAAC,YAAY,CAAC,YAAY,CAClC,IAAI,CAAC,oBAAoB,CAAC,kBAAkB,CAAC,SAAiB,CAAC,oBAAoB,EACpF,qCAAiB,CAAC,gCAAgC,CAClD,CAAC;aACF;YAAC,OAAO,CAAC,EAAE;gBACX,eAAM,CAAC,IAAI,CAAC,+DAA+D,CAAC,CAAC;aAC7E;SACD;IACF,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,2BAA2B;QAChC,eAAM,CAAC,KAAK,EAAE,CAAC;QAEf,IAAI;YACH,oEAAoE;YACpE,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,qCAAiB,CAAC,mBAAmB,CAAC,CAAC;YACpE,MAAM,IAAI,CAAC,YAAY,CAAC,cAAc,CACrC,qBAAmB,CAAC,mBAAmB,EACvC,qCAAiB,CAAC,iCAAiC,CACnD,CAAC;YACF,MAAM,IAAI,CAAC,YAAY,CAAC,YAAY,CACnC,IAAI,CAAC,oBAAoB,CAAC,kBAAkB,CAAC,cAAc,CAAC,MAAM,EAClE,qCAAiB,CAAC,iCAAiC,CACnD,CAAC;SACF;QAAC,OAAO,CAAC,EAAE;YACX,eAAM,CAAC,IAAI,CAAC,wDAAwD,CAAC,CAAC;SACtE;IACF,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,yBAAyB;QAC9B,eAAM,CAAC,KAAK,EAAE,CAAC;QAEf,IAAI;YACH,IAAI,MAAM,IAAI,CAAC,kBAAkB,CAAC,eAAe,EAAE,EAAE;gBACpD,MAAM,IAAI,CAAC,kBAAkB,CAAC,WAAW,EAAE,CAAC;aAC5C;SACD;QAAC,OAAO,CAAC,EAAE;YACX,eAAM,CAAC,IAAI,CAAC,wEAAwE,CAAC,CAAC;SACtF;IACF,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,mBAAmB;QACxB,eAAM,CAAC,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,CAAC,wBAAwB,EAAE,CAAC;QACtC,MAAM,IAAI,CAAC,2BAA2B,EAAE,CAAC;QACzC,MAAM,IAAI,CAAC,wBAAwB,EAAE,CAAC;IACvC,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,qBAAqB;QAC1B,eAAM,CAAC,KAAK,EAAE,CAAC;QAEf,MAAM,IAAI,CAAC,YAAY,CAAC,cAAc,CACrC,IAAI,CAAC,oBAAoB,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,OAAO,EACvE,qCAAiB,CAAC,mCAAmC,CACrD,CAAC;QAEF,MAAM,WAAW,GAAgB,IAAI,iCAAW,EAAE,CAAC,UAAU,EAAE,CAAC;QAChE,MAAM,CAAC,cAAc,CAAC,GAAkB,MAAM,WAAW,CAAC,WAAW,EAAE,CAAC;QACxE,OAAO,cAAc,CAAC;IACvB,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,kBAAkB,CAAC,cAA2B,EAAE,KAAa,EAAE,YAAoB,CAAC;QACzF,eAAM,CAAC,KAAK,CAAC,GAAG,KAAK,EAAE,CAAC,CAAC;QAEzB,IAAI,eAAqC,CAAC;QAC1C,MAAM,IAAI,CAAC,YAAY,CAAC,cAAc,CACrC,IAAI,CAAC,oBAAoB,CAAC,kBAAkB,CAAC,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC,EACzE,qCAAiB,CAAC,mCAAmC,CACrD,CAAC;QAEF,IAAI;YACH,eAAe,GAAG,MAAM,cAAc,CAAC,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;YAClE,IAAI,CAAC,eAAe,EAAE;gBACrB,IAAI;oBACH,MAAM,cAAc,CAAC,QAAQ,EAAE,CAAC;oBAChC,eAAe,GAAG,MAAM,cAAc,CAAC,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;iBAClE;gBAAC,OAAO,CAAC,EAAE;oBACX,eAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;iBAC/B;aACD;SACD;QAAC,OAAO,CAAC,EAAE;YACX,eAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;SAC/B;QAED,OAAO,eAAe,CAAC;IACxB,CAAC;IAED;;OAEG;IAEH,KAAK,CAAC,aAAa;QAClB,eAAM,CAAC,KAAK,EAAE,CAAC;QAEf,MAAM,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,qBAAmB,CAAC,iBAAiB,EAAE,qCAAiB,CAAC,6BAA6B,CAAC,CAAC;QAC/H,MAAM,MAAM,GAAW,MAAM,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,qBAAmB,CAAC,iBAAiB,CAAC,CAAC;QAErG,OAAO,MAAM,CAAC,SAAS,EAAE,CAAC;IAC3B,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,iBAAiB,CAAC,cAA2B,EAAE,WAAmB,EAAE,QAAgB;QACzF,MAAM,WAAW,GAAW,CAAC,CAAC;QAC9B,MAAM,UAAU,GAAe,IAAI,gCAAU,EAAE,CAAC;QAEhD,KAAK,IAAI,OAAO,GAAW,CAAC,EAAE,OAAO,IAAI,WAAW,EAAE,OAAO,EAAE,EAAE;YAChE,eAAM,CAAC,KAAK,CAAC,WAAW,OAAO,IAAI,WAAW,mBAAmB,QAAQ,iBAAiB,WAAW,GAAG,CAAC,CAAC;YAC1G,MAAM,cAAc,CAAC,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;YACrD,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,qCAAiB,CAAC,iCAAiC,CAAC,CAAC;YAElF,MAAM,gBAAgB,GAAa,MAAM,UAAU,CAAC,mBAAmB,EAAE,CAAC;YAC1E,eAAM,CAAC,KAAK,CAAC,uBAAuB,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAEnE,IAAI,gBAAgB,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;gBACxC,eAAM,CAAC,KAAK,CAAC,SAAS,QAAQ,qCAAqC,CAAC,CAAC;gBACrE,OAAO;aACP;YAED,IAAI,OAAO,GAAG,WAAW,EAAE;gBAC1B,eAAM,CAAC,IAAI,CAAC,SAAS,QAAQ,yCAAyC,CAAC,CAAC;gBACxE,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,qCAAiB,CAAC,2BAA2B,CAAC,CAAC;aAC5E;SACD;QAED,MAAM,IAAI,KAAK,CAAC,SAAS,QAAQ,wCAAwC,WAAW,WAAW,CAAC,CAAC;IAClG,CAAC;;AA3Nc,qCAAiB,GAAO,wBAAE,CAAC,KAAK,CAAC,qDAAqD,CAAC,CAAC;AACxF,uCAAmB,GAAO,wBAAE,CAAC,KAAK,CAAC,qEAAqE,CAAC,CAAC;AAF7G,mBAAmB;IAD/B,IAAA,sBAAU,GAAE;IAMV,WAAA,IAAA,kBAAM,EAAC,yBAAO,CAAC,YAAY,CAAC,CAAA;IAE5B,WAAA,IAAA,kBAAM,EAAC,yBAAO,CAAC,oBAAoB,CAAC,CAAA;IAEpC,WAAA,IAAA,kBAAM,EAAC,yBAAO,CAAC,sBAAsB,CAAC,CAAA;IAEtC,WAAA,IAAA,kBAAM,EAAC,yBAAO,CAAC,oBAAoB,CAAC,CAAA;IAEpC,WAAA,IAAA,kBAAM,EAAC,yBAAO,CAAC,kBAAkB,CAAC,CAAA;qCAPJ,2BAAY;QAEJ,2CAAoB;QAElB,+CAAsB;QAExB,2CAAoB;QAEtB,uCAAkB;GAd5C,mBAAmB,CA6N/B;AA7NY,kDAAmB"}
package/index.ts CHANGED
@@ -29,6 +29,7 @@ export * from './pageobjects/dashboard/UserPreferences';
29
29
  export * from './pageobjects/dashboard/Workspaces';
30
30
  export * from './pageobjects/dashboard/workspace-details/WorkspaceDetails';
31
31
  export * from './pageobjects/git-providers/OauthPage';
32
+ export * from './pageobjects/ide/AiCodeSignInDialog';
32
33
  export * from './pageobjects/ide/CheCodeLocatorLoader';
33
34
  export * from './pageobjects/ide/CommandPalette';
34
35
  export * from './pageobjects/ide/ExplorerView';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eclipse-che/che-e2e",
3
- "version": "7.120.0-next-8f85f13",
3
+ "version": "7.120.0-next-2d52216",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "scripts": {
@@ -0,0 +1,40 @@
1
+ /** *******************************************************************
2
+ * copyright (c) 2025 Red Hat, Inc.
3
+ *
4
+ * This program and the accompanying materials are made
5
+ * available under the terms of the Eclipse Public License 2.0
6
+ * which is available at https://www.eclipse.org/legal/epl-2.0/
7
+ *
8
+ * SPDX-License-Identifier: EPL-2.0
9
+ **********************************************************************/
10
+ import { inject, injectable } from 'inversify';
11
+ import 'reflect-metadata';
12
+ import { CLASSES } from '../../configs/inversify.types';
13
+ import { DriverHelper } from '../../utils/DriverHelper';
14
+ import { Logger } from '../../utils/Logger';
15
+ import { By } from 'monaco-page-objects';
16
+
17
+ @injectable()
18
+ export class AiCodeSignInDialog {
19
+ private static readonly OVERLAY_LOCATOR: By = By.css('div.onboarding-a-overlay.visible');
20
+ private static readonly SKIP_BUTTON_LOCATOR: By = By.css('div.onboarding-a-overlay button.onboarding-a-btn-ghost');
21
+
22
+ constructor(
23
+ @inject(CLASSES.DriverHelper)
24
+ private readonly driverHelper: DriverHelper
25
+ ) {}
26
+
27
+ async isDialogVisible(): Promise<boolean> {
28
+ Logger.debug();
29
+
30
+ return await this.driverHelper.waitVisibilityBoolean(AiCodeSignInDialog.OVERLAY_LOCATOR);
31
+ }
32
+
33
+ async closeDialog(): Promise<void> {
34
+ Logger.debug();
35
+
36
+ await this.driverHelper.waitAndClick(AiCodeSignInDialog.SKIP_BUTTON_LOCATOR);
37
+ await this.driverHelper.waitDisappearance(AiCodeSignInDialog.OVERLAY_LOCATOR);
38
+ Logger.debug('AI-powered development sign in dialog skipped');
39
+ }
40
+ }
@@ -18,6 +18,7 @@ import { CheCodeLocatorLoader } from '../pageobjects/ide/CheCodeLocatorLoader';
18
18
  import { By, EditorView, SideBarView, ViewContent, ViewItem, ViewSection, Workbench } from 'monaco-page-objects';
19
19
  import { WorkspaceHandlingTests } from '../tests-library/WorkspaceHandlingTests';
20
20
  import { RestrictedModeButton } from '../pageobjects/ide/RestrictedModeButton';
21
+ import { AiCodeSignInDialog } from '../pageobjects/ide/AiCodeSignInDialog';
21
22
 
22
23
  @injectable()
23
24
  export class ProjectAndFileTests {
@@ -32,7 +33,9 @@ export class ProjectAndFileTests {
32
33
  @inject(CLASSES.WorkspaceHandlingTests)
33
34
  private readonly workspaceHandlingTests: WorkspaceHandlingTests,
34
35
  @inject(CLASSES.RestrictedModeButton)
35
- private readonly restrictedModeButton: RestrictedModeButton
36
+ private readonly restrictedModeButton: RestrictedModeButton,
37
+ @inject(CLASSES.AiCodeSignInDialog)
38
+ private readonly aiCodeSignInDialog: AiCodeSignInDialog
36
39
  ) {}
37
40
 
38
41
  async waitWorkspaceReadinessForCheCodeEditor(): Promise<void> {
@@ -45,6 +48,7 @@ export class ProjectAndFileTests {
45
48
  );
46
49
  const end: number = new Date().getTime();
47
50
  Logger.debug(`editor was opened in ${end - start} seconds.`);
51
+ await this.dismissAiCodeSignInDialog();
48
52
  } catch (err) {
49
53
  Logger.error(`waiting for workspace readiness failed: ${err}`);
50
54
 
@@ -116,6 +120,21 @@ export class ProjectAndFileTests {
116
120
  }
117
121
  }
118
122
 
123
+ /**
124
+ * dismiss 'Sign in to continue with AI-powered development' dialog, when it appears
125
+ */
126
+ async dismissAiCodeSignInDialog(): Promise<void> {
127
+ Logger.debug();
128
+
129
+ try {
130
+ if (await this.aiCodeSignInDialog.isDialogVisible()) {
131
+ await this.aiCodeSignInDialog.closeDialog();
132
+ }
133
+ } catch (e) {
134
+ Logger.info('"Sign in to continue with AI-powered development" dialog was not shown');
135
+ }
136
+ }
137
+
119
138
  /**
120
139
  * perform to 'Trust' dialog boxes, when they appear
121
140
  */