public MessageBase[] Test(MessageBase[] msgs) { m_sent = msgs; m_ev.Set(); m_client.Join(); m_server.Join(); return m_received; }
public long Serialize(MessageBase[] msgs) { int numMessages = msgs.Length; m_stream.Position = 0; foreach (var msg in msgs) Serializer.SerializeWithLengthPrefix(m_stream, msg, PrefixStyle.Base128); m_stream.Flush(); return m_stream.Position; }
public long Serialize(MessageBase[] msgs) { int numMessages = msgs.Length; m_stream.Position = 0; foreach (var msg in msgs) Serializer.Serialize(m_stream, msg); m_stream.Flush(); return m_stream.Position; }
public override void Compare(MessageBase msg) { var m = (StructMessage)msg; A(m_struct1.Equals(m.m_struct1)); A(m_struct2.Equals(m.m_struct2)); }
public override void Compare(MessageBase msg) { var m = (StringMessage)msg; A(m_string == m.m_string); }
public override void Compare(MessageBase msg) { var m = (PrimitivesMessage)msg; A(m_bool == m.m_bool); A(m_byte == m.m_byte); A(m_sbyte == m.m_sbyte); A(m_char == m.m_char); A(m_ushort == m.m_ushort); A(m_short == m.m_short); A(m_uint == m.m_uint); A(m_int == m.m_int); A(m_ulong == m.m_ulong); A(m_long == m.m_long); A(m_single == m.m_single); A(m_double == m.m_double); A(m_enum == m.m_enum); }
public abstract void Compare(MessageBase msg);
static void Test(IMemStreamTest test, MessageBase[] msgs) { test.Prepare(msgs.Length); /* Serialize part */ { GC.Collect(); GC.WaitForPendingFinalizers(); GC.Collect(); var c0 = GC.CollectionCount(0); var c1 = GC.CollectionCount(1); var c2 = GC.CollectionCount(2); var sw = Stopwatch.StartNew(); long size = test.Serialize(msgs); sw.Stop(); c0 = GC.CollectionCount(0) - c0; c1 = GC.CollectionCount(1) - c1; c2 = GC.CollectionCount(2) - c2; Console.WriteLine("{0,-13} | {1,-21} | {2,10} | {3,3} {4,3} {5,3} | {6,10} |", test.Framework, "MemStream Serialize", sw.ElapsedMilliseconds, c0, c1, c2, size); } /* Deerialize part */ { GC.Collect(); GC.WaitForPendingFinalizers(); GC.Collect(); var c0 = GC.CollectionCount(0); var c1 = GC.CollectionCount(1); var c2 = GC.CollectionCount(2); var sw = Stopwatch.StartNew(); var received = test.Deserialize(); sw.Stop(); c0 = GC.CollectionCount(0) - c0; c1 = GC.CollectionCount(1) - c1; c2 = GC.CollectionCount(2) - c2; Console.WriteLine("{0,-13} | {1,-21} | {2,10} | {3,3} {4,3} {5,3} | {6,10} |", test.Framework, "MemStream Deserialize", sw.ElapsedMilliseconds, c0, c1, c2, ""); for (int i = 0; i < msgs.Length; ++i) { var msg1 = msgs[i]; var msg2 = received[i]; msg1.Compare(msg2); } } }
static void Test(INetTest test, MessageBase[] msgs) { test.Prepare(msgs.Length); GC.Collect(); GC.WaitForPendingFinalizers(); GC.Collect(); var c0 = GC.CollectionCount(0); var c1 = GC.CollectionCount(1); var c2 = GC.CollectionCount(2); var sw = Stopwatch.StartNew(); var received = test.Test(msgs); sw.Stop(); c0 = GC.CollectionCount(0) - c0; c1 = GC.CollectionCount(1) - c1; c2 = GC.CollectionCount(2) - c2; Console.WriteLine("{0,-13} | {1,-21} | {2,10} | {3,3} {4,3} {5,3} | {6,10} |", test.Framework, "NetTest", sw.ElapsedMilliseconds, c0, c1, c2, ""); if (Program.EnableResultCheck) { for (int i = 0; i < msgs.Length; ++i) { var msg1 = msgs[i]; var msg2 = received[i]; msg1.Compare(msg2); } } }
public override void Compare(MessageBase msg) { var m = (ComplexMessage)msg; if (m_msg == null) A(m_msg == m.m_msg); else m_msg.Compare(m.m_msg); if (m_sealedClass == null) A(m_sealedClass == m.m_sealedClass); else m_sealedClass.Compare(m.m_sealedClass); if (m_abstractMsg == null) A(m_abstractMsg == m.m_abstractMsg); else ((SimpleClass)m_abstractMsg).Compare((SimpleClass)m.m_abstractMsg); if (m_ifaceMsg == null) A(m_ifaceMsg == m.m_ifaceMsg); else ((SimpleClass2)m_ifaceMsg).Compare((SimpleClass2)m.m_ifaceMsg); }
public override void Compare(MessageBase msg) { var m = (NullableDecimalMessage)msg; A(m_val == m.m_val); }
public static MessageBase[] CreateMessages(MyRandom rand, Type type, int numMessages) { var arr = new MessageBase[numMessages]; var method = type.GetMethod("Create", System.Reflection.BindingFlags.Static | System.Reflection.BindingFlags.Public); var create = (CreateDelegate)Delegate.CreateDelegate(typeof(CreateDelegate), method); for (int i = 0; i < numMessages; ++i) arr[i] = create(rand); return arr; }
public override void Compare(MessageBase msg) { var m = (CustomSerializersMessage)msg; int lz = m_int3Arr.GetLength(0); int ly = m_int3Arr.GetLength(1); int lx = m_int3Arr.GetLength(2); for (int z = 0; z < lz; ++z) for (int y = 0; y < ly; ++y) for (int x = 0; x < lx; ++x) A(m_int3Arr[z, y, x] == m.m_int3Arr[z, y, x]); }
public override void Compare(MessageBase msg) { var m = (U8Message)msg; A(m_val == m.m_val); }
public override void Compare(MessageBase msg) { var m = (BoxedPrimitivesMessage)msg; A((bool)m_bool == (bool)m.m_bool); A((byte)m_byte == (byte)m.m_byte); A((int)m_int == (int)m.m_int); A((long)m_long == (long)m.m_long); A((MyEnum)m_enum == (MyEnum)m.m_enum); }
public override void Compare(MessageBase msg) { var m = (DictionaryMessage)msg; if (m_intMap == null) A(m_intMap == m.m_intMap); else { A(m_intMap.Count == m.m_intMap.Count); foreach (var kvp in m_intMap) A(kvp.Value == m.m_intMap[kvp.Key]); } if (m_obMap == null) A(m_obMap == m.m_obMap); else { A(m_obMap.Count == m.m_obMap.Count); foreach (var kvp in m_obMap) kvp.Value.Compare(m.m_obMap[kvp.Key]); } }
void Warmup() { var msgs = new MessageBase[] { new S16Message(), new ComplexMessage(), new IntArrayMessage() }; IMemStreamTest t; t = new MemStreamTest(m_serializer); t.Prepare(msgs.Length); t.Serialize(msgs); t.Deserialize(); if (Program.RunProtoBufTests) { t = new PBMemStreamTest(); t.Prepare(msgs.Length); t.Serialize(msgs); t.Deserialize(); } }
public override void Compare(MessageBase msg) { var m = (IntArrayMessage)msg; if (m_intArr == null) { A(m_intArr == m.m_intArr); } else { for (int i = 0; i < m_intArr.Length; ++i) A(m_intArr[i] == m.m_intArr[i]); } }
public static MessageBase[] CreateMessages(Type type, int numMessages) { var arr = new MessageBase[numMessages]; for (int i = 0; i < numMessages; ++i) arr[i] = (MessageBase)Activator.CreateInstance(type, s_rand); return arr; }