Skip to content

Commit b23ac0c

Browse files
ethanyhouCopilot
andcommitted
Address comments.
Co-authored-by: Copilot <copilot@github.com>
1 parent ecd0171 commit b23ac0c

1 file changed

Lines changed: 32 additions & 21 deletions

File tree

  • com.microsoft.copilot.eclipse.swtbot.test/test-plans/byok

com.microsoft.copilot.eclipse.swtbot.test/test-plans/byok/byok.md

Lines changed: 32 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -41,10 +41,10 @@ Not exercised in this plan (separate scenarios):
4141
- Eclipse IDE with the GitHub Copilot for Eclipse plugin installed and
4242
activated.
4343
- **A signed-in Copilot account on the host machine** for every TC except
44-
TC-009 (which deliberately probes the signed-out empty state). The Copilot
44+
TC-010 (which deliberately probes the signed-out empty state). The Copilot
4545
JS agent reads its token from the OS-standard Copilot store.
4646
- The signed-in account must have BYOK enabled by GitHub policy. If the org
47-
disables custom models, only TC-010 (disabled tip) is observable; the rest
47+
disables custom models, only TC-011 (disabled tip) is observable; the rest
4848
will short-circuit to the disabled view.
4949
- Valid API keys for at least one non-Azure provider (e.g. OpenAI) for the
5050
add-key / add-model / change-key / delete-key TCs. Use a throwaway key
@@ -112,7 +112,7 @@ Not exercised in this plan (separate scenarios):
112112
- Page never leaves loading → `ByokService.refreshData()` failed; check
113113
`workspace.log` for the LS bind error.
114114
- Sign-in label or org-disabled tip is shown instead of the tree → the
115-
preconditions don't match; fall through to TC-009 / TC-010.
115+
preconditions don't match; fall through to TC-010 / TC-011.
116116

117117
---
118118

@@ -137,21 +137,27 @@ Not exercised in this plan (separate scenarios):
137137
3. Verify **Add Model…** becomes enabled and **Change API…** /
138138
**Delete API…** stay disabled (no key registered yet).
139139
4. Click **Add Model…**.
140-
5. Verify the **Add OpenAI API Key** dialog opens (title contains the
141-
provider name, single password-masked **API Key** field, **Add** and
142-
**Cancel** buttons; **Add** is initially disabled until a non-blank key
143-
is entered).
144-
6. Type a valid OpenAI API key into the field and click **Add**.
145-
7. Wait for the per-provider loading indicator to clear (the "(Loading...)"
140+
5. Verify the API-key dialog opens with shell title **Add OpenAI Models**
141+
(formatted from `preferences_page_byok_addModel_dialog_title`). The
142+
dialog body contains a single password-masked **API Key** text field
143+
with an eye-icon toggle button to reveal/mask the value, and the
144+
button bar shows the platform-default **OK** and **Cancel** buttons.
145+
**OK** is enabled on open (the dialog defers validation until the
146+
button is pressed).
147+
6. Verify that pressing **OK** while the field is empty does **not**
148+
close the dialog: focus returns to the API Key field and no save is
149+
dispatched. (Equivalent of the empty-input guard in `okPressed`.)
150+
7. Type a valid OpenAI API key into the field and click **OK**.
151+
8. Wait for the per-provider loading indicator to clear (the "(Loading...)"
146152
suffix on the OpenAI node disappears).
147-
8. Expand the OpenAI node.
148-
9. Verify a list of models is fetched from the provider and rendered as
149-
children, each with a **Status** column entry of either **Enable** or
150-
**Disable** (matching their default registration state) and a status
151-
icon.
152-
10. Verify the OpenAI node label now includes the registered/total count
153+
9. Expand the OpenAI node.
154+
10. Verify a list of models is fetched from the provider and rendered as
155+
children, each with a **Status** column entry of either **Enable** or
156+
**Disable** (matching their default registration state) and a status
157+
icon.
158+
11. Verify the OpenAI node label now includes the registered/total count
153159
suffix, e.g. `OpenAI ( 0 of N Enabled )`.
154-
11. Re-select the OpenAI provider node and verify **Change API…** and
160+
12. Re-select the OpenAI provider node and verify **Change API…** and
155161
**Delete API…** are now enabled.
156162

157163
#### Expected Result
@@ -161,7 +167,8 @@ Not exercised in this plan (separate scenarios):
161167

162168
#### 📸 Key Screenshots
163169
- [ ] **Empty OpenAI node** — selected before clicking Add Model.
164-
- [ ] **Add API Key dialog** — open with the provider name in the title.
170+
- [ ] **API key dialog** — shell title **Add OpenAI Models**, masked
171+
API Key field with eye toggle, **OK** / **Cancel** buttons.
165172
- [ ] **OpenAI populated** — node expanded with models + count suffix.
166173

167174
---
@@ -182,9 +189,12 @@ Not exercised in this plan (separate scenarios):
182189
3. Verify a confirmation dialog appears with title **Change OpenAI API
183190
Key?** and warning text about the change potentially breaking models.
184191
Click **Yes**.
185-
4. Verify the **Add API Key** dialog reopens, pre-populated with the
186-
current (masked) API key value.
187-
5. Replace the field with the new API key and click **Add**.
192+
4. Verify the API-key dialog reopens. In the change flow its shell title
193+
is just the provider name (**OpenAI**, not the `Add %s Models`
194+
formatted title used for the add flow), and the masked API Key field
195+
is pre-populated with the current key. **OK** / **Cancel** are the
196+
button-bar labels; **OK** is enabled on open.
197+
5. Replace the field with the new API key and click **OK**.
188198
6. Wait for the per-provider loading indicator to clear.
189199
7. Verify the OpenAI node still shows its model list (refreshed against
190200
the new key) and no error dialog is shown.
@@ -195,7 +205,8 @@ Not exercised in this plan (separate scenarios):
195205

196206
#### 📸 Key Screenshots
197207
- [ ] **Change API confirmation dialog**.
198-
- [ ] **Add API Key dialog with pre-filled value**.
208+
- [ ] **API key dialog (change flow)** — shell title is just **OpenAI**,
209+
field pre-populated with the masked existing key.
199210

200211
---
201212

0 commit comments

Comments
 (0)