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

reading_and_writing_CKExceptionData_with_Standard_Serialization() private method

        public void reading_and_writing_CKExceptionData_with_Standard_Serialization()
        {
            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() );

            BinaryFormatter f = new BinaryFormatter();
            using( var mem = new MemoryStream() )
            {
                f.Serialize( mem, dataE0 );
                f.Serialize( mem, dataE1 );
                f.Serialize( mem, dataE2 );
                f.Serialize( mem, dataE3 );
                f.Serialize( mem, dataE4 );
                mem.Position = 0;
                var data0 = (CKExceptionData)f.Deserialize( mem );
                Assert.AreEqual( data0.ToString(), dataE0.ToString() );
                var data1 = (CKExceptionData)f.Deserialize( mem );
                Assert.AreEqual( data1.ToString(), dataE1.ToString() );
                var data2 = (CKExceptionData)f.Deserialize( mem );
                Assert.AreEqual( data2.ToString(), dataE2.ToString() );
                var data3 = (CKExceptionData)f.Deserialize( mem );
                Assert.AreEqual( data3.ToString(), dataE3.ToString() );
                var data4 = (CKExceptionData)f.Deserialize( mem );
                Assert.AreEqual( data4.ToString(), dataE4.ToString() );
            }
        }
#endif