Baoyuantop commented on code in PR #3258:
URL: https://github.com/apache/apisix-dashboard/pull/3258#discussion_r2638917597
##########
src/apis/upstreams.ts:
##########
@@ -55,19 +55,56 @@ export const putUpstreamReq = (
};
export const deleteAllUpstreams = async (req: AxiosInstance) => {
- const totalRes = await getUpstreamListReq(req, {
- page: 1,
- page_size: PAGE_SIZE_MIN,
- });
+ // Retry wrapper to handle potential transient failures (e.g., 500 Internal
Server Error) when fetching upstream list.
+ // This is particularly useful in E2E tests where rapid creation/deletion
might cause temporary instability.
Review Comment:
It's best not to rely on this design; e2e testing should simulate real-world
scenarios.
##########
e2e/tests/plugin_metadata.crud-all-fields.spec.ts:
##########
@@ -36,13 +36,29 @@ const deletePluginMetadata = async (req: typeof e2eReq,
name: string) => {
const getMonacoEditorValue = async (editPluginDialog: Locator) => {
let editorValue = '';
const textarea = editPluginDialog.locator('textarea');
- if (await textarea.count() > 0) {
- editorValue = await textarea.inputValue();
- }
- if (!editorValue || editorValue.trim() === '{') {
- const lines = await
editPluginDialog.locator('.view-line').allTextContents();
- editorValue = lines.join('\n').replace(/\s+/g, ' ');
+
+ // Retry logic to handle potential race conditions where editor content
isn't fully loaded
+ for (let i = 0; i < 20; i++) {
Review Comment:
Can we choose to wait longer instead of looping?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]