Пример #1
0
        public void t07_TreeViewViewModel()
        {
            SIEETreeView Folders = new SIEETreeView(null);
            TVIViewModel tviVM;
            TVIViewModel tviVMa;

            string testPath = Path.GetTempPath();

            testPath = testPath.Substring(0, testPath.Length - 1);      // Remove trailing "\"
            findFolderBruteForce(testPath);

            string           startPath = testPath.Split('\\').First() + @"\"; // e.g. "C:\"
            FilesystemFolder startFsf  = new FilesystemFolder(null, new DirectoryInfo(startPath));

            // Select a folder and verify results
            Folders.AddItem(new TVIViewModel(startFsf, null, true));
            Assert.AreEqual(startPath, Folders[0].GetDisplayNamePath(), "t0");
            tviVM = Folders.FindNodeInTree(testPath);
            verifySelectedNode(tviVM, testPath, "t1");

            // Serialize and reinstantiate
            List <string> serializedPath = tviVM.GetSerializedPath();

            Folders.Clear();
            Folders.AddItem(new TVIViewModel(startFsf, null, true));
            tviVM = Folders.InitializeTree(serializedPath, typeof(FilesystemFolder));
            verifySelectedNode(tviVM, testPath, "t2");
            tviVMa = Folders.FindNodeInTree(testPath);
            verifySelectedNode(tviVMa, testPath, "t3");
        }
Пример #2
0
            }                             // for xml serializer

            public FilesystemFolder(FilesystemFolder parent, DirectoryInfo di)
            {
                DirInfo = di;
                if (parent == null)
                {
                    FolderPath = di.Name;
                }
                else
                {
                    FolderPath = parent.FolderPath + (parent.Depth == 0 ? "" : @"\") + di.Name;
                }
            }
Пример #3
0
        private void verifySelectedNode(TVIViewModel node, string path, string testName)
        {
            if (node == null)
            {
                throw new Exception("verifySelectedNode, testName=" + testName);
            }
            string           tail = path.Split('\\').Last();
            FilesystemFolder fsf  = node.Tvim as FilesystemFolder;

            Assert.AreEqual(tail.ToLower(), node.DisplayName.ToLower());
            Assert.AreEqual(tail.ToLower(), fsf.DisplayName.ToLower());
            Assert.AreEqual(path.Split('\\').Length, fsf.Depth + 1);
            Assert.AreEqual(fsf.FolderPath.ToLower(), path.ToLower());
        }