async function handleCreateFleetRequest()

in webview-ui/src/manualTest/createFleetTests.tsx [59:120]


    async function handleCreateFleetRequest(
        groupName: string,
        location: string,
        name: string,
        hubMode: HubMode,
        dnsPrefix: string | null,
        webview: MessageSink<ToWebViewMsgDef>,
    ) {
        await new Promise((resolve) => setTimeout(resolve, 5000));
        webview.postProgressUpdate({
            operationDescription: `Successfully created ${groupName} in ${location}`,
            event: ProgressEventType.InProgress,
            errorMessage: null,
            deploymentPortalUrl: null,
            createdFleet: null,
        });

        const deploymentPortalUrl = `https://portal.azure.com/#resource/subscriptions/${initialState.subscriptionId}/resourceGroups/${groupName}/providers/Microsoft.Resources/deployments/testdeployment?referrer_source=vscode&referrer_context=vscode-aks-tools-test`;
        webview.postProgressUpdate({
            operationDescription: `Creating Fleet ${name}`,
            event: ProgressEventType.InProgress,
            errorMessage: null,
            deploymentPortalUrl,
            createdFleet: null,
        });

        let waitMs;
        switch (location) {
            case cancelLocationMarker:
                waitMs = 3000;
                break;
            case failLocationMarker:
                waitMs = 500;
                break;
            default:
                waitMs = 10000;
                break;
        }

        const event =
            location === failLocationMarker
                ? ProgressEventType.Failed
                : location === cancelLocationMarker
                  ? ProgressEventType.Cancelled
                  : ProgressEventType.Success;

        const errorMessage = event === ProgressEventType.Failed ? "Mistakes were made" : null;

        await new Promise((resolve) => setTimeout(resolve, waitMs));
        webview.postProgressUpdate({
            operationDescription: "Creating Fleet",
            event,
            errorMessage,
            deploymentPortalUrl,
            createdFleet:
                event === ProgressEventType.Success
                    ? {
                          portalUrl: `https://portal.azure.com/#resource/subscriptions/${initialState.subscriptionId}/resourceGroups/${groupName}/providers/Microsoft.ContainerService/fleets/${name}?referrer_source=vscode&referrer_context=vscode-aks-tools-test`,
                      }
                    : null,
        });
    }