CK.Core.Tests.CKExceptionTests.reading_and_writing_CKExceptionData_with_BinaryWriter_and_BinaryReader C# (CSharp) Method

reading_and_writing_CKExceptionData_with_BinaryWriter_and_BinaryReader() private method

        public void reading_and_writing_CKExceptionData_with_BinaryWriter_and_BinaryReader()
        {
            var dataE0 = CKExceptionData.CreateFrom( ThrowAggregatedException() );
            var dataE1 = CKExceptionData.CreateFrom( ThrowSimpleException( "Test Message" ) );
            var dataE2 = CKExceptionData.CreateFrom( ThrowLoaderException() );
            var dataE3 = CKExceptionData.CreateFrom( ThrowExceptionWithInner() );
            var dataE4 = CKExceptionData.CreateFrom( ThrowTwoInnerExceptions() );
            using( var mem = new MemoryStream() )
            {
                CKBinaryWriter w = new CKBinaryWriter( mem );
                dataE0.Write( w );
                dataE1.Write( w );
                dataE2.Write( w );
                dataE3.Write( w );
                dataE4.Write( w );
                mem.Position = 0;
                var r = new CKBinaryReader( mem );
                var data0 = new CKExceptionData( r, StringAndStringBuilderExtension.IsCRLF );
                Assert.AreEqual( data0.ToString(), dataE0.ToString() );
                var data1 = new CKExceptionData( r, StringAndStringBuilderExtension.IsCRLF );
                Assert.AreEqual( data1.ToString(), dataE1.ToString() );
                var data2 = new CKExceptionData( r, StringAndStringBuilderExtension.IsCRLF );
                Assert.AreEqual( data2.ToString(), dataE2.ToString() );
                var data3 = new CKExceptionData( r, StringAndStringBuilderExtension.IsCRLF );
                Assert.AreEqual( data3.ToString(), dataE3.ToString() );
                var data4 = new CKExceptionData( r, StringAndStringBuilderExtension.IsCRLF );
                Assert.AreEqual( data4.ToString(), dataE4.ToString() );
            }
        }