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