public void Categories_VerifyEmptyTaxaIsNotRetrieved() { var model = new HierarchicalTaxonomyModel(); model.TaxaToDisplay = HierarchicalTaxaToDisplay.All; var viewModel = model.CreateViewModel(); var expectedFilteredTaxa = new List <string>() { "c1", "c3", "c3|c3c2c1" }; Assert.AreEqual(expectedFilteredTaxa.Count, viewModel.Taxa.Count); for (var i = 0; i < expectedFilteredTaxa.Count; i++) { var actual = viewModel.Taxa[i]; var expectedTaxon = expectedFilteredTaxa[i]; string taxonParentName; string taxonName; this.GetTaxonNameAndParentName(expectedTaxon, out taxonParentName, out taxonName); Assert.AreEqual(taxonName, actual.Title); } }
public void Categories_VerifyTaxaUnderParticularParentIsRetrieved() { var model = new HierarchicalTaxonomyModel(); model.TaxaToDisplay = HierarchicalTaxaToDisplay.UnderParticularTaxon; model.ShowEmptyTaxa = true; var rootTaxon = TaxonomyManager.GetManager().GetTaxa <HierarchicalTaxon>().FirstOrDefault(t => t.Title == "c3"); model.RootTaxonId = rootTaxon.Id; var viewModel = model.CreateViewModel(); var innerLevelNames = this.taxaNamesWithParents .Where(tn => tn.Contains("c3|")) .Select(tn => tn.Split('|')[1]) .ToList(); Assert.AreEqual(innerLevelNames.Count, viewModel.Taxa.Count); for (int i = 0; i < viewModel.Taxa.Count; i++) { var expected = innerLevelNames[i]; var actual = viewModel.Taxa[i]; Assert.AreEqual(expected, actual.Title); } }
public void Categories_VerifySpecificTaxaIsRetrieved() { var model = new HierarchicalTaxonomyModel(); model.TaxaToDisplay = HierarchicalTaxaToDisplay.Selected; model.ShowEmptyTaxa = true; var selectedTaxaIds = TaxonomyManager.GetManager() .GetTaxa <HierarchicalTaxon>() .Where(t => this.taxaNamesWithParents[1] == t.Title.ToString() || this.taxaNamesWithParents[2] == t.Title.ToString()) .Select(t => t.Id); var serializer = new JavaScriptSerializer(); model.SerializedSelectedTaxaIds = serializer.Serialize(selectedTaxaIds); var viewModel = model.CreateViewModel(); Assert.AreEqual(2, viewModel.Taxa.Count); for (int i = 0; i < viewModel.Taxa.Count; i++) { var expected = this.taxaNamesWithParents[i + 1]; var actual = viewModel.Taxa[i]; Assert.AreEqual(expected, actual.Title); } }
public void Categories_VerifyHierarchicalTaxaIsRetrieved() { var model = new HierarchicalTaxonomyModel(); model.TaxaToDisplay = HierarchicalTaxaToDisplay.TopLevel; model.ShowEmptyTaxa = true; model.FlattenHierarchy = false; var viewModel = model.CreateViewModel(); var expectedTaxaTree = this.GetExpectedTaxaTree(this.taxaNamesWithParents); foreach (var taxon in expectedTaxaTree) { this.AssertTaxonIsInPlace(viewModel.Taxa, taxon); } }
public void Categories_VerifyHierarchicalTaxaFilteredByContentTypeIsRetrieved() { var model = new HierarchicalTaxonomyModel(); model.TaxaToDisplay = HierarchicalTaxaToDisplay.UsedByContentType; model.ContentTypeName = typeof(NewsItem).FullName; model.FlattenHierarchy = false; var viewModel = model.CreateViewModel(); var expectedTaxaTree = this.GetExpectedTaxaTree(new List <string>() { "c1", "c3", "c3|c3c2c1" }); foreach (var taxon in expectedTaxaTree) { this.AssertTaxonIsInPlace(viewModel.Taxa, taxon); } }
public void Categories_VerifyTopLevelTaxaIsRetrieved() { var model = new HierarchicalTaxonomyModel(); model.TaxaToDisplay = HierarchicalTaxaToDisplay.TopLevel; model.ShowEmptyTaxa = true; var viewModel = model.CreateViewModel(); var topLevelNames = this.taxaNamesWithParents.Where(tn => !tn.Contains('|')).ToList(); Assert.AreEqual(topLevelNames.Count, viewModel.Taxa.Count); for (int i = 0; i < viewModel.Taxa.Count; i++) { var expected = topLevelNames[i]; var actual = viewModel.Taxa[i]; Assert.AreEqual(expected, actual.Title); } }
public void Categories_VerifyAllTaxaIsRetrieved() { var model = new HierarchicalTaxonomyModel(); model.TaxaToDisplay = HierarchicalTaxaToDisplay.All; model.ShowEmptyTaxa = true; var viewModel = model.CreateViewModel(); Assert.AreEqual(this.taxaNamesWithParents.Count, viewModel.Taxa.Count); for (int i = 0; i < viewModel.Taxa.Count; i++) { string parentName; string taxonName; this.GetTaxonNameAndParentName(this.taxaNamesWithParents[i], out parentName, out taxonName); var actual = viewModel.Taxa[i]; Assert.AreEqual(taxonName, actual.Title); } }
public void Categories_VerifyTaxaFromContentItemIsRetrieved() { var item = NewsManager.GetManager().GetNewsItems().FirstOrDefault(); var model = new HierarchicalTaxonomyModel(); model.ContentId = item.Id; var viewModel = model.CreateViewModel(); var itemTaxa = (IList <Guid>)item.GetValue("Category"); Assert.AreEqual(itemTaxa.Count, viewModel.Taxa.Count); var taxonomyManager = TaxonomyManager.GetManager(); for (var i = 0; i < itemTaxa.Count; i++) { var taxon = taxonomyManager.GetTaxa <HierarchicalTaxon>().FirstOrDefault(t => t.Id == itemTaxa[i]); Assert.AreEqual(taxon.Title.ToString(), viewModel.Taxa[i].Title); } }
public void Categories_VerifyAllTaxaSortedByTitleZA() { var model = new HierarchicalTaxonomyModel(); model.TaxaToDisplay = HierarchicalTaxaToDisplay.All; model.ShowEmptyTaxa = true; model.SortExpression = "Title DESC"; var viewModel = model.CreateViewModel(); Assert.AreEqual(this.taxaNamesWithParents.Count, viewModel.Taxa.Count); var expectedTaxonOrder = new List <string>() { "c3c2c1", "c3c2", "c3c1", "c3", "c2", "c1" }; for (int i = 0; i < viewModel.Taxa.Count; i++) { Assert.AreEqual(expectedTaxonOrder[i], viewModel.Taxa[i].Title); } }