public void BrowserInternalElementToBoolConverterTest() { var converter = new NodeCategoryVMToBoolConverter(); var NcVM = new NodeCategoryViewModel(""); var RncVM = new RootNodeCategoryViewModel(""); var CncVM = new ClassesNodeCategoryViewModel(RncVM); object result; //1. Element is null. //2. Element is NodeCategoryViewModel. //2. Element is RootNodeCategoryViewModel. //2. Element is ClassesNodeCategoryViewModel. // 1 case result = converter.Convert(null, null, null, null); Assert.AreEqual(false, result); // 2 case result = converter.Convert(NcVM, null, null, null); Assert.AreEqual(true, result); // 3 case result = converter.Convert(RncVM, null, null, null); Assert.AreEqual(false, result); // 4 case result = converter.Convert(CncVM, null, null, null); Assert.AreEqual(false, result); }
public void ElementTypeToBoolConverterTest() { var converter = new ElementTypeToBoolConverter(); var NseVM = new NodeSearchElementViewModel( new NodeModelSearchElement(new TypeLoadData(typeof(Nodes.Symbol))), null); var NcVM = new NodeCategoryViewModel(""); var RncVM = new RootNodeCategoryViewModel(""); var CncVM = new ClassesNodeCategoryViewModel(RncVM); object result; //1. Element is null. //2. Element is NodeSearchElement. //3. Element is NodeCategoryViewModel. //4. Element is RootNodeCategoryViewModel. //5. Element is RootNodeCategoryViewModel with ClassesNodeCategoryViewModel. // 1 case result = converter.Convert(null, null, null, null); Assert.AreEqual(false, result); // 2 case result = converter.Convert(NseVM, null, null, null); Assert.AreEqual(false, result); // 3 case result = converter.Convert(NcVM, null, null, null); Assert.AreEqual(true, result); // 4 case result = converter.Convert(RncVM, null, null, null); Assert.AreEqual(true, result); // 5 case RncVM.SubCategories.Add(CncVM); result = converter.Convert(RncVM, null, null, null); Assert.AreEqual(false, result); }
public void RootElementToBoolConverterTest() { var converter = new RootElementVMToBoolConverter(); var RncVM = new RootNodeCategoryViewModel(""); object result; //1. Element is null. //2. Element is RootNodeCategoryViewModel. // 1 case result = converter.Convert(null, null, null, null); Assert.AreEqual(false, result); // 2 case result = converter.Convert(RncVM, null, null, null); Assert.AreEqual(true, result); }
private IEnumerable<RootNodeCategoryViewModel> CategorizeEntries(IEnumerable<NodeSearchElement> entries, bool expanded) { var tempRoot = entries.GroupByRecursive<NodeSearchElement, string, NodeCategoryViewModel>( element => element.Categories, (name, subs, es) => { var category = new NodeCategoryViewModel(name, es.OrderBy(en => en.Name).Select(MakeNodeSearchElementVM), subs); category.IsExpanded = expanded; category.RequestBitmapSource += SearchViewModelRequestBitmapSource; category.RequestReturnFocusToSearch += OnRequestFocusSearch; return category; }, ""); var result = tempRoot.SubCategories.Select(cat => { var rootCat = new RootNodeCategoryViewModel(cat.Name, cat.Entries, cat.SubCategories) { IsExpanded = expanded }; rootCat.RequestReturnFocusToSearch += OnRequestFocusSearch; return rootCat; }); tempRoot.Dispose(); return result.OrderBy(cat => cat.Name); }