public void Get_by_type_should_return_tags_with_inherits() { var errList = new TemplateErrors(); var list = new TagsList(errList) { new GroupTag { Name = "val1" }, new GroupTag { Name = "val2" }, new SortTag { Name = "val3" }, new ProtectedTag { Name = "val4" }, new DescTag { Name = "val5" }, new ColsFitTag { Name = "val6" } }; list.GetAll <SortTag>().Select(x => x.Name).Should().BeEquivalentTo("val1", "val2", "val3", "val5"); }
private void ParseTags(IXLRange range) { var innerRanges = range.GetContainingNames().ToArray(); var cells = from c in _cells let value = c.GetString() where (value.StartsWith("<<") || value.EndsWith(">>")) && !innerRanges.Any(nr => nr.Ranges.Contains(c.XLCell.AsRange())) select c; foreach (var cell in cells) { OptionTag[] tags; string newValue; if (cell.CellType == TemplateCellType.Formula) { tags = _tagsEvaluator.Parse(cell.Formula, range, cell, out newValue); cell.Formula = newValue; } else { tags = _tagsEvaluator.Parse(cell.GetString(), range, cell, out newValue); cell.Value = newValue; } if (cell.Row > _rowCnt) { _rangeTags.AddRange(tags); } else { _tags.AddRange(tags); } } _rangeOption = _rangeTags.GetAll <RangeOptionTag>().FirstOrDefault(); }