github.com/argoproj/argo-cd/v2@v2.10.9/ui-test/src/test001.ts (about) 1 import Configuration from './Configuration'; 2 import UiTestUtilities from './UiTestUtilities'; 3 import {trace} from 'console'; 4 import {ApplicationsList} from './applications-list/applications-list'; 5 import {ApplicationCreatePanel} from './application-create-panel/application-create-panel'; 6 import {ApplicationsSyncPanel} from './applications-sync-panel/applications-sync-panel'; 7 import {PopupManager} from './popup/popup-manager'; 8 9 /** 10 * General test that 11 * - creates an app based on the environment variables (see .env), 12 * - syncs the app 13 * - waits for the healthy and sync'ed states 14 * - deletes the app. 15 * 16 * This can be run multiple times for different apps 17 * 18 */ 19 async function doTest() { 20 const navigation = await UiTestUtilities.init(); 21 try { 22 const appsList: ApplicationsList = await navigation.clickApplicationsNavBarButton(); 23 const applicationCreatePanel: ApplicationCreatePanel = await appsList.clickNewAppButton(); 24 25 UiTestUtilities.log('About to create application'); 26 await applicationCreatePanel.setAppName(Configuration.APP_NAME); 27 await applicationCreatePanel.setProjectName(Configuration.APP_PROJECT); 28 await applicationCreatePanel.setSourceRepoUrl(Configuration.GIT_REPO); 29 await applicationCreatePanel.setSourceRepoPath(Configuration.SOURCE_REPO_PATH); 30 await applicationCreatePanel.selectDestinationClusterNameMenu(Configuration.DESTINATION_CLUSTER_NAME); 31 await applicationCreatePanel.setDestinationNamespace(Configuration.DESTINATION_NAMESPACE); 32 await applicationCreatePanel.clickCreateButton(); 33 34 const appsSyncPanel: ApplicationsSyncPanel = await appsList.clickSyncButtonOnApp(Configuration.APP_NAME); 35 await appsSyncPanel.clickSyncButton(); 36 37 await appsList.waitForHealthStatusOnApp(Configuration.APP_NAME); 38 await appsList.waitForSyncStatusOnApp(Configuration.APP_NAME); 39 await appsList.checkNoAdditionalOperations(Configuration.APP_NAME); 40 41 const popupManager: PopupManager = await appsList.clickDeleteButtonOnApp(Configuration.APP_NAME); 42 await popupManager.setPromptFieldName(Configuration.APP_NAME); 43 await popupManager.clickPromptOk(); 44 // After deleting, wait until the delete operation finishes 45 await appsList.waitUntilOperationStatusDisappearsOnApp(Configuration.APP_NAME); 46 47 await UiTestUtilities.log('Test passed'); 48 } catch (e) { 49 trace('Test failed ', e); 50 } finally { 51 await navigation.quit(); 52 } 53 } 54 55 doTest();