public void CompareCopiedFolders(FolderComponent left, FolderComponent right) { Assert.NotEqual(left.Id, right.Id); Assert.Equal(left.Type, right.Type); Assert.Equal($"Copy of {left.Name}", right.Name); // Assert.Equal(left.ParentId, right.ParentId); ?? Assert.Equal(left.Children?.Count ?? 0, right.Children?.Count ?? 0); if (left.Children != null) { for (int i = 0; i < left.Children.Count; i++) { var leftChild = left.Children[i]; var rightChild = right.Children[i]; Assert.Equal(leftChild.Type, rightChild.Type); switch (leftChild.Type) { case ComponentType.File: CompareCopiedFiles(leftChild as FileComponent, rightChild as FileComponent); break; case ComponentType.Folder: CompareCopiedFolders(leftChild as FolderComponent, rightChild as FolderComponent); break; default: throw new InvalidEnumArgumentException(); } } } }
public static FolderComponent AddANewFolder(this FolderComponent folderComponent, string folderName, string baseFolder = "", bool toggleNotification = false) { folderComponent .ClickOnAddFolder() .PerformCommonAddOrEditFolderActions(folderName, baseFolder, toggleNotification); return(folderComponent); }
public static FolderComponent EditFolder(this FolderComponent folderComponent, string oldFolderName, string oldBaseFolder, string newFolderName, string newBaseFolder = "", bool toggleNotification = false) { folderComponent .ClickOnEditFolder(oldFolderName, oldBaseFolder) .PerformCommonAddOrEditFolderActions(newFolderName, newBaseFolder, toggleNotification, true); return(folderComponent); }
public static FolderComponent ClickOnAddFolder(this FolderComponent folderComponent) { Thread.Sleep(1000); folderComponent.AddFolderButton.Click(); return(folderComponent); }
public static void Main() { FolderComponent rootfolder = GetFolders(@"D:\4Share"); var allItems = rootfolder.GetAllItems(); foreach (var folderComponent in allItems) { Console.WriteLine(folderComponent.FullName); } Console.ReadLine(); }
public static FolderComponent ClickOnToggleNotifications(this FolderComponent folderComponent, string folderName) { IWebElement folderRow = folderComponent.GetFolderRow(folderName); Thread.Sleep(1000); folderRow.WaitUntilElement(folderComponent.ToggleLabelText).Click(); return(folderComponent); }
public static FolderComponent ClickOnEditFolder(this FolderComponent folderComponent, string folderToEdit, string oldBaseFolder) { IWebElement folderRow = folderComponent.GetFolderRow(folderToEdit, oldBaseFolder); Thread.Sleep(1000); folderRow.WaitUntilElement(ExtendedBy.DataTestId("folders/labels:item-edit")).Click(); return(folderComponent); }
public static FolderComponent PerformCommonAddOrEditFolderActions(this FolderComponent folderComponent, string folderName, string baseFolder = "", bool toggleNotification = false, bool isUpdate = false) { folderComponent.FolderModalComponent .FillFolderNameField(folderName, isUpdate) .ChooseBaseFolder(baseFolder) .ToggleNotification(toggleNotification) .ClickOnSaveButton(); return(folderComponent); }
public override Component CopyTo(Component newParent, string newId) { var newFolder = new FolderComponent { Id = newId, Name = $"Copy of {Name}" }; newParent.AddChild(newFolder); return(newFolder); }
public static FolderComponent DeleteFolder(this FolderComponent folderComponent, string folderToDelete, string baseFolder) { IWebElement folderRow = folderComponent.GetFolderRow(folderToDelete, baseFolder); Thread.Sleep(2000); folderRow.WaitUntilElement(ExtendedBy.DataTestId("dropdown:open")).Click(); folderComponent.DeleteButton.WaitUntilElement(ExtendedBy.ButtonText(FoldersAndLabelsConstants.DELETE)).Click(); Thread.Sleep(1000); folderComponent.DeleteButton.WaitUntilElement(ExtendedBy.ButtonText(FoldersAndLabelsConstants.DELETE), 15).Click(); return(folderComponent); }
public override void CopyTo(Component newParent) { var newFolder = new FolderComponent { Id = Id, //TODO Name = $"Copy of {Name}" }; newParent.AddChild(newFolder); if (Children != null) { foreach (var child in Children) { child.CopyTo(newFolder); } } }
public static IWebElement GetFolderRow(this FolderComponent folderComponent, string folderName, string baseFolderName = "") { string folderPath = string.IsNullOrEmpty(baseFolderName) ? folderName : $"{baseFolderName}/{folderName}"; List <IWebElement> folderRows = folderComponent.BaseFolderList; bool isFound = false; IWebElement folderRow = folderComponent.BaseFolderList.FirstOrDefault(); foreach (var possibleFolderRow in folderRows) { folderRow = possibleFolderRow.FindElements(By.TagName("li")) .FirstOrDefault(p => p.GetAttribute("title") .Contains(folderPath)); if (folderRow != null) { isFound = true; break; } } return(folderRow); }
public override void AddFolder(FolderComponent folderComponent) { FolderComponents.Add(folderComponent); }
public FoldersAndLabelsPage(IWebDriver driver) : base(driver) { FolderComponent = new FolderComponent(driver); LabelComponent = new LabelComponent(driver); NotificationComponent = new NotificationComponent(driver); }
public static bool GetFolderStructure(this FolderComponent folderComponent, string folderName, string baseFolderName) { IWebElement folderRow = folderComponent.GetFolderRow(folderName, baseFolderName); return(folderRow != null); }
public abstract void AddFolder(FolderComponent folderComponent);
public static bool IsNoFoldersAvailableTextPresent(this FolderComponent folderComponent) { Thread.Sleep(2000); return(folderComponent.NoFoldersAvailableText.FirstOrDefault(x => x.Text.Equals(FoldersAndLabelsConstants.NO_FOLDERS_AVAILABLE)) != null); }