Ejemplo n.º 1
0
        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);
        }
Ejemplo n.º 9
0
        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);
        }
Ejemplo n.º 11
0
        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);
        }