Example #1
0
        void IDescriptionVisitor.Start(Description description)
        {
            if (_level == 0)
            {
                _report.AddDivider('=');
                _report.AddText(description.ToString());
                _report.AddDivider('=');

                writeProperties(4, description);

                writeChildren(4, description);
            }
            else
            {
                var prefix = _prefixes.Peek().GetPrefix();
                var indent = prefix.Length;
                if (_childName.IsNotEmpty())
                {
                    prefix  = prefix + _childName + ":";
                    indent += 5;
                }

                var firstColumn = _childName.IsEmpty() ? prefix : prefix + _childName + ":";
                _report.AddColumnData(firstColumn, description.Title, description.ShortDescription ?? string.Empty);



                writeProperties(indent, description);
                writeChildren(indent, description);
            }
        }
Example #2
0
 public DescriptionTextWriter(Description description)
 {
     if (!description.IsMultiLevel())
     {
         _report.AddText(description.ToString());
     }
     else
     {
         description.AcceptVisitor(this);
     }
 }
Example #3
0
        public void add_dividers_and_jagged_columns()
        {
            var report = new TextReport();

            report.AddDivider('=');
            report.StartColumns(3);
            report.AddText("This is the header");
            report.AddDivider('=');

            report.AddColumnData("a1***", "b1", "c1");
            report.AddColumnData("a2", "b2***", "c2");
            report.AddColumnData("a3", "b3", "c3***");
            report.AddDivider('=');

            var writer = new StringWriter();

            report.Write(writer);

            Debug.WriteLine(writer.ToString());

            writer.ToString().ShouldEqualWithLineEndings(@"
=========================
This is the header
=========================
a1***     b1        c1   
a2        b2***     c2   
a3        b3        c3***
=========================
");
        }
Example #4
0
        public void simple_dividers_and_text_2()
        {
            var report = new TextReport();

            report.AddDivider('=');
            report.AddText("the title of this");
            report.AddDivider('=');
            report.AddText("some more stuff that is longer");

            var writer = new StringWriter();

            report.Write(writer);

            writer.ToString().ShouldEqualWithLineEndings(@"
==============================
the title of this
==============================
some more stuff that is longer
");
        }
        private static void writeAssemblies(StringWriter writer)
        {
            var report = new TextReport();

            report.StartColumns(3);
            report.AddDivider('-');
            report.AddText("Assemblies");
            report.AddDivider('-');

            AppDomain.CurrentDomain.GetAssemblies().Each(assem => {
                var assemblyName = assem.GetName();
                var file         = findCodebase(assem);
                report.AddColumnData(assemblyName.Name, assemblyName.Version.ToString(), file);
            });

            report.AddDivider('-');
            report.Write(writer);

            writer.WriteLine();
        }
Example #6
0
        public BindingReportTextWriter(BindingReport binding, bool showValues)
        {
            _showValues = showValues;

            addDivider();
            _report.AddText("Binding report for " + binding.ModelType.FullName);
            addDivider();

            if (showValues)
            {
                _report.StartColumns(3);
                _report.AddColumnData("Property", "Handler", "Values ('[RawValue]' from '[Source]'/[RawKey])");
            }
            else
            {
                _report.StartColumns(2);
                _report.AddColumnData("Property", "Handler");
            }

            addDivider();

            binding.AcceptVisitor(this);
            addDivider();
        }