public void SerializationInfoAddGet()
{
var value = new Serializable();
var si = new SerializationInfo(typeof(Serializable), new FormatterConverter());
var sc = new StreamingContext();
value.GetObjectData(si, sc);
Assert.Equal(typeof(Serializable), si.ObjectType);
Assert.Equal(typeof(Serializable).FullName, si.FullTypeName);
Assert.Equal(typeof(Serializable).Assembly.FullName, si.AssemblyName);
Assert.Equal(15, si.MemberCount);
Assert.Equal(true, si.GetBoolean("bool"));
Assert.Equal("hello", si.GetString("string"));
Assert.Equal('a', si.GetChar("char"));
Assert.Equal(byte.MaxValue, si.GetByte("byte"));
Assert.Equal(decimal.MaxValue, si.GetDecimal("decimal"));
Assert.Equal(double.MaxValue, si.GetDouble("double"));
Assert.Equal(short.MaxValue, si.GetInt16("short"));
Assert.Equal(int.MaxValue, si.GetInt32("int"));
Assert.Equal(long.MaxValue, si.GetInt64("long"));
Assert.Equal(sbyte.MaxValue, si.GetSByte("sbyte"));
Assert.Equal(float.MaxValue, si.GetSingle("float"));
Assert.Equal(ushort.MaxValue, si.GetUInt16("ushort"));
Assert.Equal(uint.MaxValue, si.GetUInt32("uint"));
Assert.Equal(ulong.MaxValue, si.GetUInt64("ulong"));
Assert.Equal(DateTime.MaxValue, si.GetDateTime("datetime"));
}