public void PropertiesTests() { var item = new NavigationGroupInfo(new NavigationGroupDTO { Id = 1, Name = "name" }); Assert.AreEqual("name", item.Name); Assert.AreEqual(1, item.Id); }
public void NavigationItemsPropertyTest() { var item = new NavigationGroupInfo(new NavigationGroupDTO()); Assert.AreEqual(0, item.NavigationItems.Count); var navDTO = new NavigationGroupDTO(); navDTO.NavigationItems.Add(new NavigationItemDTO { Id = 1, Name = "name", ProcessId = 2 }); item = new NavigationGroupInfo(navDTO); Assert.AreEqual(1, item.NavigationItems.Count); }
public NavGroup(NavigationGroupInfo groupInfo, ProcessList procList) { if (groupInfo == null) { throw new ArgumentNullException("groupInfo"); } if (procList == null) { throw new ArgumentNullException("procList"); } this.Id = groupInfo.Id; this.Name = groupInfo.Name; this.SystemName = groupInfo.SystemName; if (groupInfo.Icon != null && groupInfo.Icon.Length > 0) { this.Icon = Convert.ToBase64String(groupInfo.Icon); } var itemsList = new List<NavItem>(); this.Items = itemsList; foreach (var item in groupInfo.NavigationItems) { if (item.ProcessId != null) { itemsList.Add(new NavItem(item, procList)); } } }
/// <summary> /// Initializes the specified group. /// </summary> /// <param name="group"> /// The group. /// </param> /// <param name="favoriteList"> /// </param> public void Initialize(NavigationGroupInfo @group, IFavoriteList<IFavoriteInfo> favoriteList = null) { Model = group; _items.Filter += ItemsFilter; this.NavItems = new ObservableCollection<NavItemViewModel>(); foreach (var item in group.NavigationItems) { if (NavItems.Any(x => x.Name == item.Name)) continue; var newItem = ItemFactory[0].CreateExport().Value; newItem.Initialize(item, Model.Name, favoriteList); this.NavItems.Add(newItem); } _items.Source = this.NavItems; this.Width = this.CalculateWith(); RaisePropertyChanged(() => Items); }