public static void WhenProtonMailPageIsOpenedFolderEditingIsEnabled(this FoldersAndLabelsPage foldersAndLabelsPage) { string baseFolderName = RandomDataGenerator.RandomAlphaNumericString(10); string childFolder = RandomDataGenerator.RandomAlphaNumericString(10); string newChildFolderName = RandomDataGenerator.RandomAlphaNumericString(10); List <string> folderNames = new List <string>() { baseFolderName, newChildFolderName }; TestExecutionContext.CurrentContext.CurrentTest.Properties.Set(FoldersAndLabelsConstants.ADDED_FOLDERS_LIST, folderNames); //Adding base folder foldersAndLabelsPage.AddBaseFolder(baseFolderName) .VerifyEntityCreatedNotificationIsDisplayed(baseFolderName) .VerifyFolderIsAdded(baseFolderName); //Adding nested folder foldersAndLabelsPage.AddFolderUnderBaseFolder(childFolder, baseFolderName) .VerifyFolderIsAdded(childFolder, baseFolderName); //Editing child folder name and folder base foldersAndLabelsPage.EditFolderFromFoldersList(childFolder, baseFolderName, newChildFolderName) .VerifyEntityUpdatedNotificationIsDisplayed(newChildFolderName) .VerifyFolderIsAdded(newChildFolderName); }
public static void WhenProtomMailPageIsOpenedNestingOfFoldersIsEnabledAndMaximumFolderLimitCanNotBeExceeded(this FoldersAndLabelsPage foldersAndLabelsPage) { string baseFolderName = RandomDataGenerator.RandomAlphaNumericString(10); List <string> folderNames = new List <string>() { baseFolderName }; //Adding base folder foldersAndLabelsPage.AddBaseFolder(baseFolderName) .VerifyFolderIsAdded(baseFolderName); int numberOfFolders = FoldersAndLabelsConstants.MAX_NUMBER_OF_FOLDERS - 1; //Adding all nested folders while (numberOfFolders != 0) { string currentBaseFolderFullPath = folderNames[folderNames.Count - 1]; string[] AllBaseFolders = currentBaseFolderFullPath.Split('/'); string baseChildFolderName = AllBaseFolders[AllBaseFolders.Length - 1]; string childFolder = RandomDataGenerator.RandomAlphaNumericString(10); foldersAndLabelsPage.AddFolderUnderBaseFolder(childFolder, baseChildFolderName) .VerifyFolderIsAdded(childFolder, baseChildFolderName); folderNames.Add($"{currentBaseFolderFullPath}/{childFolder}"); numberOfFolders--; } TestExecutionContext.CurrentContext.CurrentTest.Properties.Set(FoldersAndLabelsConstants.ADDED_FOLDERS_LIST, folderNames); //Adding an extra folder, to verify the folder limit is reached baseFolderName = RandomDataGenerator.RandomAlphaNumericString(10); foldersAndLabelsPage.AddBaseFolder(baseFolderName) .VerifyModalIsNotClosedAfterSave() .ClickCancelOnTheFoldersModal() .VerifyFolderLimitReachedNotificationIsDisplayed() .VerifyFolderIsNotAdded(baseFolderName);; }
public static void WhenProtonMailPageIsOpenedFolderNotificationsCanBeDisabled(this FoldersAndLabelsPage foldersAndLabelsPage) { string baseFolderName = RandomDataGenerator.RandomAlphaNumericString(10); List <string> folderNames = new List <string>() { baseFolderName }; TestExecutionContext.CurrentContext.CurrentTest.Properties.Set(FoldersAndLabelsConstants.ADDED_FOLDERS_LIST, folderNames); //Adding base folder and updating the folder notification from the folder row foldersAndLabelsPage.AddBaseFolder(baseFolderName) .VerifyEntityCreatedNotificationIsDisplayed(baseFolderName) .VerifyFolderIsAdded(baseFolderName) .ToggleNotificationFromFoldersList(baseFolderName) .VerifyEntityUpdatedNotificationIsDisplayed(baseFolderName); }
public static void WhenProtonMailPageIsOpenedAndFolderWithSameNameAsExistingCanBeAddedOnADifferentLevel(this FoldersAndLabelsPage foldersAndLabelsPage) { string baseFolderName = RandomDataGenerator.RandomAlphaNumericString(10); List <string> folderNames = new List <string>() { baseFolderName }; TestExecutionContext.CurrentContext.CurrentTest.Properties.Set(FoldersAndLabelsConstants.ADDED_FOLDERS_LIST, folderNames); //Adding two folders with the same name, just a different location, and verifying that this action can be perfomed foldersAndLabelsPage.AddBaseFolder(baseFolderName) .VerifyEntityCreatedNotificationIsDisplayed(baseFolderName) .VerifyFolderIsAdded(baseFolderName) .AddNewFolder(baseFolderName, baseFolderName) .VerifyEntityCreatedNotificationIsDisplayed(baseFolderName); }
public static void WhenProtonMailPageIsOpenedAndFolderWithSameNameAsExistingFolderOnTheSameLevelFolderCanNotBeAdded(this FoldersAndLabelsPage foldersAndLabelsPage) { string baseFolderName = RandomDataGenerator.RandomAlphaNumericString(10); List <string> folderNames = new List <string>() { baseFolderName }; //Adding two folders with the same name under same level and verifying that the second one can not be added to the folders list foldersAndLabelsPage.AddBaseFolder(baseFolderName) .VerifyEntityCreatedNotificationIsDisplayed(baseFolderName) .VerifyFolderIsAdded(baseFolderName) .AddNewFolder(baseFolderName) .VerifyModalIsNotClosedAfterSave() .ClickCancelOnTheFoldersModal(); TestExecutionContext.CurrentContext.CurrentTest.Properties.Set(FoldersAndLabelsConstants.ADDED_FOLDERS_LIST, folderNames); }
public static void WhenProtonMailPageIsOpenedLabelWithNameSameAsExistingFolderCanNotBeAdded(this FoldersAndLabelsPage foldersAndLabelsPage) { string baseFolderName = RandomDataGenerator.RandomAlphaNumericString(10); List <string> folderNames = new List <string>() { baseFolderName }; TestExecutionContext.CurrentContext.CurrentTest.Properties.Set(FoldersAndLabelsConstants.ADDED_FOLDERS_LIST, folderNames); //Adding base folder and adding a new label with the same name as the folder foldersAndLabelsPage.AddBaseFolder(baseFolderName) .VerifyFolderIsAdded(baseFolderName) .VerifyEntityCreatedNotificationIsDisplayed(baseFolderName) .AddNewLabel(baseFolderName) .VerifyLabelModalIsNotClosedAfterSave() .VerifyALabelOrFolderWithThisNameAlreadyExistsNotificationIsDisplayed() .ClickCancelOnTheLabelsModal(); }