示例#1
0
        public TextTableRenderer(ITabularParameterDetails table)
        {
            _renderRowStatus = table.VerificationStatus != ParameterVerificationStatus.NotApplicable;

            _columns = table.Columns.Select(c => new TextColumn(c.Name)).ToArray();
            foreach (var row in table.Rows)
            {
                AddRow(row);
            }
        }
示例#2
0
        private static XElement ToXElement(ITabularParameterDetails tabularDetails)
        {
            var objects = new List <object>
            {
                ToXAttribute(tabularDetails.VerificationStatus)
            };

            if (!string.IsNullOrWhiteSpace(tabularDetails.VerificationMessage))
            {
                objects.Add(new XAttribute("Message", tabularDetails.VerificationMessage));
            }
            objects.AddRange(tabularDetails.Columns.Select(ToXElement));
            objects.AddRange(tabularDetails.Rows.Select(ToXElement));
            return(new XElement("Table", objects));
        }
示例#3
0
        private static IEnumerable <IHtmlNode> GetParameterTable(ITabularParameterDetails table)
        {
            var columns         = table.Columns.Select(col => Html.Tag(Html5Tag.Th).Class(col.IsKey ? "param column key" : "param column value").Content(col.Name)).ToList();
            var renderRowStatus = table.VerificationStatus != ParameterVerificationStatus.NotApplicable;

            if (renderRowStatus)
            {
                columns.Insert(0, Html.Tag(Html5Tag.Th).Class("param column").Content("#"));
            }

            yield return(Html.Tag(Html5Tag.Thead)
                         .Content(Html.Tag(Html5Tag.Tr)
                                  .Content(columns)));

            yield return(Html.Tag(Html5Tag.Tbody).Content(table.Rows.Select(row => GetParameterTableRow(row, renderRowStatus))));
        }
示例#4
0
 private static IHtmlNode GetTabularParameter(string parameterName, ITabularParameterDetails table)
 {
     return(Html.Tag(Html5Tag.Div).Class("param").Content(
                Html.Tag(Html5Tag.Div).Content($"{parameterName}:"),
                Html.Tag(Html5Tag.Table).Class("param").Content(GetParameterTable(table))));
 }