Example #1
0
        public void WriteBufferNull()
        {
            using (var w = new DumpTextWriter())
                w.Write(new char[] { 'a', 'b', 'c' }, -1, -2);

            Assert.Fail("Expected " + nameof(ArgumentException));
        }
Example #2
0
        public ObjectTextDumper(
            TextWriter writer,
            int indentLevel   = DefaultIndentLevel,
            int indentSize    = DefaultIndentSize,
            int maxDumpLength = DumpTextWriter.DefaultMaxLength,
            BindingFlags propertiesBindingFlags = BindingFlags.Default,
            BindingFlags fieldsBindingFlags     = BindingFlags.Default)
        {
            if (writer == null)
            {
                throw new ArgumentNullException(nameof(writer));
            }

            if (writer.GetType() == typeof(StringWriter))
            {
                // wrap the writer in DumpTextWriter
                Writer        = new DumpTextWriter((StringWriter)writer, maxDumpLength);
                _isDumpWriter = true;
            }
            else
            {
                Writer = writer;
            }

            _indentLevel           = indentLevel >= DefaultIndentLevel ? indentLevel : DefaultIndentLevel;
            _indentSize            = indentSize >= DefaultIndentSize ? indentSize : DefaultIndentSize;
            PropertiesBindingFlags = propertiesBindingFlags == BindingFlags.Default ? DefaultPropertiesBindingFlags : propertiesBindingFlags;
            FieldsBindingFlags     = fieldsBindingFlags == BindingFlags.Default ? DefaultFieldsBindingFlags : fieldsBindingFlags;
        }
Example #3
0
        public ObjectTextDumper(
            TextWriter writer,
            IMemberInfoComparer memberInfoComparer = null)
        {
            Writer             = writer ?? throw new ArgumentNullException(nameof(writer));
            MemberInfoComparer = memberInfoComparer ?? new MemberInfoComparer();
            Settings           = DefaultDumpSettings;
            _indentSize        = Settings.IndentSize;

            if (Writer is StringWriter)
            {
                // wrap the writer in DumpTextWriter - handles better the indentations and
                // limits the dump output to DumpTextWriter.DefaultMaxLength
                Writer        = new DumpTextWriter((StringWriter)Writer, Settings.MaxDumpLength);
                _isDumpWriter = true;
            }
        }