public void SerializeBaseTypes() { FileStream FS = new FileStream("Test.bin", FileMode.Create); CompactFormatter CS = new CompactFormatter(); int number = 42; double fnumber = 3.1415; string name = "CompactFormatter"; try { CS.Serialize(FS, number); CS.Serialize(FS, fnumber); CS.Serialize(FS, name); } finally { FS.Close(); } FileStream FS2 = new FileStream("Test.bin", FileMode.Open); try { int number2 = (int)CS.Deserialize(FS2); double fnumber2 = (double)CS.Deserialize(FS2); string name2 = (string)CS.Deserialize(FS2); FS2.Close(); NUnit.Framework.Assertion.AssertEquals(number, number2); NUnit.Framework.Assertion.AssertEquals(fnumber, fnumber2); NUnit.Framework.Assertion.AssertEquals(name, name2); } finally { FS2.Close(); } }
public object Deserialize(CompactFormatter parent, Stream serializationStream) { DataSet ds = new DataSet((string)parent.Deserialize(serializationStream)); ds.Namespace = (string)parent.Deserialize(serializationStream); ds.Prefix = (string)parent.Deserialize(serializationStream); ds.CaseSensitive = (bool)parent.Deserialize(serializationStream); ds.EnforceConstraints = (bool)parent.Deserialize(serializationStream); foreach (DataTable table in (DataTable[])parent.Deserialize(serializationStream)) { ds.Tables.Add(table); } ArrayList constraintList = (ArrayList)parent.Deserialize(serializationStream); this.SetForeignKeyConstraints(ds, constraintList); ArrayList relationList = (ArrayList)parent.Deserialize(serializationStream); this.SetRelations(ds, relationList); ArrayList arrayList1 = (ArrayList)parent.Deserialize(serializationStream); ArrayList arrayList2 = (ArrayList)parent.Deserialize(serializationStream); for (int index = 0; index < arrayList1.Count; ++index) { ds.ExtendedProperties.Add(arrayList1[index], arrayList2[index]); } return((object)ds); }
public void SerializeComplexTypes() { FileStream FS = new FileStream("Test.bin", FileMode.Create); CompactFormatter CS = new CompactFormatter(); ArrayList AR = new ArrayList(); AR.Add("Primo Elemento"); AR.Add("Secondo Elemento"); AR.Add("Terzo Elemento"); DateTime stamp = DateTime.Now; Type type = typeof(System.Exception); try { CS.Serialize(FS, AR); CS.Serialize(FS, stamp); CS.Serialize(FS, type); } finally{ FS.Close(); } FileStream FS2 = new FileStream("Test.bin", FileMode.Open); try{ ArrayList AR2 = (ArrayList)CS.Deserialize(FS2); DateTime stamp2 = (DateTime)CS.Deserialize(FS2); Type type2 = (Type)CS.Deserialize(FS2); NUnit.Framework.Assertion.AssertEquals(stamp, stamp2); for (int i = 0; i < AR.Count; i++) { NUnit.Framework.Assertion.AssertEquals(AR[i], AR2[i]); } NUnit.Framework.Assertion.AssertEquals(type, type2); } finally{ FS2.Close(); } }
public object Deserialize(CompactFormatter parent, System.IO.Stream serializationStream) { ArrayList colNames = (ArrayList)parent.Deserialize(serializationStream); ArrayList colTypes = (ArrayList)parent.Deserialize(serializationStream); ArrayList dataRows = (ArrayList)parent.Deserialize(serializationStream); DataTable dt = new DataTable(); // Add columns for (int i = 0; i < colNames.Count; i++) { DataColumn col = new DataColumn(colNames[i].ToString(), Type.GetType(colTypes[i].ToString())); dt.Columns.Add(col); } // Add rows for (int i = 0; i < dataRows.Count; i++) { DataRow row = dt.NewRow(); row.ItemArray = (Object[])dataRows[i]; dt.Rows.Add(row); } dt.AcceptChanges(); return(dt); }
public void SerializeArrayTypes() { FileStream FS = new FileStream("Test.bin", FileMode.Create); CompactFormatter CS = new CompactFormatter(); String[] ArTesto = new String[10]; int[] ArNum = new int[10]; DateTime[] ArStamp = new DateTime[10]; ArTesto[0] = "Primo Elemento"; ArTesto[1] = "Secondo Elemento"; ArTesto[2] = "Terzo Elemento"; ArTesto[4] = "$$"; ArNum[0] = 1; ArNum[1] = 2; ArNum[5] = 6; ArStamp[0] = DateTime.Now; ArStamp[1] = DateTime.Now; ArStamp[3] = DateTime.Now; CS.Serialize(FS, ArTesto); CS.Serialize(FS, ArNum); CS.Serialize(FS, ArStamp); FS.Close(); FileStream FS2 = new FileStream("Test.bin", FileMode.Open); try { String[] ArTesto2 = (String[])CS.Deserialize(FS2); int[] ArNum2 = (int[])CS.Deserialize(FS2); DateTime[] ArStamp2 = (DateTime[])CS.Deserialize(FS2); for (int i = 0; i < ArTesto.Length; i++) { NUnit.Framework.Assertion.AssertEquals(ArTesto[i], ArTesto2[i]); } for (int i = 0; i < ArNum.Length; i++) { NUnit.Framework.Assertion.AssertEquals(ArNum[i], ArNum2[i]); } for (int i = 0; i < ArStamp.Length; i++) { NUnit.Framework.Assertion.AssertEquals(ArStamp[i], ArStamp2[i]); } } finally { FS2.Close(); } }
public void TestObject() { int max = 42; FileStream stream = new FileStream("Prova.bin", System.IO.FileMode.Create); CompactFormatter CFormatter = new CompactFormatter(); SimpleObject[] obj = new SimpleObject[max]; for (int i = 0; i < max; i++) { obj[i] = new SimpleObject(42, "BELLA RAGA", 3.1415); } CFormatter.Serialize(stream, obj); stream.Flush(); stream.Close(); stream = new FileStream("Prova.bin", System.IO.FileMode.Open); CompactFormatter CFormatter2 = new CompactFormatter(); SimpleObject[] obj2 = (SimpleObject[])CFormatter2.Deserialize(stream); stream.Close(); Assert.AreEqual(obj, obj2); }
public void SerializeSelfReferencingTypes() { FileStream FS = new FileStream("Test.bin", FileMode.Create); CompactFormatter CS = new CompactFormatter(); SelfReferencingItem SRI = new SelfReferencingItem(12); try { CS.Serialize(FS, SRI); } finally { FS.Close(); } FileStream FS2 = new FileStream("Test.bin", FileMode.Open); try { SelfReferencingItem SRI2 = (SelfReferencingItem)CS.Deserialize(FS2); FS2.Close(); NUnit.Framework.Assertion.AssertEquals(SRI, SRI2); } finally { FS2.Close(); } }
public void TestCustomSerialization() { CompactFormatter CF = new CompactFormatter(); FileStream stream = new FileStream("Prova.bin", System.IO.FileMode.Create); CustomSerializableObject ser = new CustomSerializableObject(42, 3.1415F, "Ciao Mondo!"); CF.Serialize(stream, ser); stream.Flush(); stream.Close(); CF = new CompactFormatter(); FileStream stream2 = new FileStream("Prova.bin", System.IO.FileMode.Open); CustomSerializableObject ser2 = (CustomSerializableObject) CF.Deserialize(stream2); Assert.AreEqual(42, ser2.A); Assert.AreEqual(3.1415, ser2.F); Assert.AreEqual("Ciao Mondo!", ser2.S); stream2.Close(); }
public void SerializeNotSerializable() { CompactFormatter CS = new CompactFormatter(); NotSerializableType NST = new NotSerializableType(42, 3.1415, "CompactFormatter"); FileStream FS = new FileStream("Test.bin", FileMode.Create); try { CS.Serialize(FS, NST); } finally { FS.Close(); } FileStream FS2 = new FileStream("Test.bin", FileMode.Open); try { NotSerializableType NST2 = (NotSerializableType)CS.Deserialize(FS2); NUnit.Framework.Assertion.AssertEquals("Expected default value 0 for the NonSerializable field number, found" + NST2.number, NST2.number, 0); NUnit.Framework.Assertion.AssertEquals("Expected serialized value of 3.1415 for the Serializable field dnumber, found:" + NST2.dnumber, NST2.dnumber, 3.1415); } finally { FS2.Close(); } }
public void SerializeStruct() { CompactFormatter CS = new CompactFormatter(); StructType str = new StructType(2, 4, 3.14F, "TestStruct"); FileStream FS = new FileStream("Test.bin", FileMode.Create); try { CS.Serialize(FS, str); } finally { FS.Close(); } FileStream FS2 = new FileStream("Test.bin", FileMode.Open); try { StructType str2 = (StructType)CS.Deserialize(FS2); NUnit.Framework.Assertion.AssertEquals(str, str2); } finally { FS2.Close(); } }
public void SerializeCustomObject() { CompactFormatter CS = new CompactFormatter(); CustomObject custom = new CustomObject("CompactFormatter", 42, 3.1415F); FileStream FS = new FileStream("Test.bin", FileMode.Create); try { CS.Serialize(FS, custom); } finally { FS.Close(); } FileStream FS2 = new FileStream("Test.bin", FileMode.Open); try { CustomObject custom2 = (CustomObject)CS.Deserialize(FS2); NUnit.Framework.Assertion.AssertEquals(true, custom2.Matches("CompactFormatter", 42, 3.1415F)); } finally { FS2.Close(); } }
public void SerializeDelegate() { FileStream FS = new FileStream("Test.bin", FileMode.Create); CompactFormatter CS = new CompactFormatter(); WriteDelegate WD = new WriteDelegate(DelegateWrapper.WriteScreen); DelegateWrapper DW = new DelegateWrapper(WD, DelegateTypes.WRITESCREEN); try { CS.Serialize(FS, DW); } finally { FS.Close(); } FileStream FS2 = new FileStream("Test.bin", FileMode.Open); try { DelegateWrapper DW2 = (DelegateWrapper)CS.Deserialize(FS2); FS2.Close(); DW2.Write("DelegateSerializationTest"); } finally { FS2.Close(); } }
public void SerializeAttributeTypes() { FileStream FS = new FileStream("Test.bin", FileMode.Create); CompactFormatter CS = new CompactFormatter(); AttributeType obj = new AttributeType("TCP", 1.0F); try { CS.Serialize(FS, obj); } finally { FS.Close(); } FileStream FS2 = new FileStream("Test.bin", FileMode.Open); try { AttributeType obj2 = (AttributeType)CS.Deserialize(FS2); FS2.Close(); NUnit.Framework.Assertion.AssertEquals(obj2, obj); } finally { FS2.Close(); } }
public void SerializeDataSetType() { DataSetType DST = new DataSetType(); FileStream FS = new FileStream("Test.bin", FileMode.Create); CompactFormatter CS = new CompactFormatter(); try { CS.Serialize(FS, DST.DSet); } finally { FS.Close(); } FileStream FS2 = new FileStream("Test.bin", FileMode.Open); try { DataSet DSet2 = (DataSet)CS.Deserialize(FS2); FS2.Close(); NUnit.Framework.Assertion.AssertEquals(DST.DSet, DSet2); } finally { FS2.Close(); } }
public void SerializationWithSurrogate() { FileStream stream = new FileStream("Prova.bin", System.IO.FileMode.Create); CompactFormatter CFormatter = new CompactFormatter(); CFormatter.AddSurrogate(typeof(Surrogate.DefaultSurrogates)); SimpleObjectSurrogate obj = new SimpleObjectSurrogate(42, "BELLA RAGA", 3.1415); CFormatter.Serialize(stream, obj); stream.Flush(); stream.Close(); stream = new FileStream("Prova.bin", System.IO.FileMode.Open); CompactFormatter CFormatter2 = new CompactFormatter(); CFormatter2.AddSurrogate(typeof(Surrogate.DefaultSurrogates)); SimpleObjectSurrogate obj2; obj2 = (SimpleObjectSurrogate)CFormatter2.Deserialize(stream); Console.WriteLine(obj.Real); stream.Close(); Assert.AreEqual(obj, obj2); }
public void SerializationWithoutSurrogate() { FileStream stream = new FileStream("Prova.bin", System.IO.FileMode.Create); CompactFormatter CFormatter = new CompactFormatter(); Console.WriteLine(CFormatter.Mode); SimpleObjectSurrogate obj = new SimpleObjectSurrogate(42, "BELLA RAGA", 3.1415); try { CFormatter.Serialize(stream, obj); } catch (System.Exception err) { stream.Close(); throw err; } stream.Flush(); stream.Close(); stream = new FileStream("Prova.bin", System.IO.FileMode.Open); CompactFormatter CFormatter2 = new CompactFormatter(); SimpleObjectSurrogate obj2; obj2 = (SimpleObjectSurrogate)CFormatter2.Deserialize(stream); Console.WriteLine(obj.Real); stream.Close(); Assert.AreEqual(obj, obj2); }
public void SerializeEnumTypes() { FileStream FS = new FileStream("Test.bin", FileMode.Create); CompactFormatter CS = new CompactFormatter(); EnumType en = EnumType.SECOND; try { CS.Serialize(FS, en); } finally { FS.Close(); } FileStream FS2 = new FileStream("Test.bin", FileMode.Open); try { EnumType en2 = (EnumType)CS.Deserialize(FS2); FS2.Close(); NUnit.Framework.Assertion.AssertEquals(en, en2); } finally { FS2.Close(); } }
public void SerializeOneWithOverrider() { CompactFormatter CF = new CompactFormatter(); CF.AddOverrider(typeof(OverriderClass)); FileStream stream = new FileStream("Prova.bin", System.IO.FileMode.Create); ObjectWithOverrider ser = new ObjectWithOverrider(42, 3.1415F, "Ciao Mondo!"); CF.Serialize(stream, ser); stream.Flush(); stream.Close(); CF = new CompactFormatter(); CF.AddOverrider(typeof(OverriderClass)); FileStream stream2 = new FileStream("Prova.bin", System.IO.FileMode.Open); ObjectWithOverrider ser2 = (ObjectWithOverrider) CF.Deserialize(stream2); Assert.AreEqual(42, ser2.A); Assert.AreEqual(3.1415, ser2.F); Assert.AreEqual("Ciao Mondo!", ser2.S); stream2.Close(); }
public void TestString() { FileStream stream = new FileStream("Prova.bin", System.IO.FileMode.Create); CompactFormatter CFormatter = new CompactFormatter(); long start = DateTime.Now.Ticks; int s = 0; String[] s1 = new String[max]; s1[0] = s.ToString(); Console.WriteLine( "Serializing and Deserializing an array of type {1} composed by {0} elements", max, s1.GetType().ToString() ); for (int i = 1; i < max; i++) { //Console.WriteLine("Serialized {0}",s); s++; s1[i] = s.ToString(); } CFormatter.Serialize(stream, s1); stream.Flush(); stream.Close(); stream = new FileStream("Prova.bin", System.IO.FileMode.Open); CompactFormatter CFormatter2 = new CompactFormatter(); String[] temp = new String[max]; //for(int i = 0; i<max; i++) //{ temp = (String[])CFormatter2.Deserialize(stream); //} stream.Close(); long stop = DateTime.Now.Ticks; long ts = stop - start; Console.WriteLine("Elapsed Time:{0},{1},{2}", ts, start, stop); s = 0; String s12 = s.ToString(); for (int i = 0; i < max; i++) { //Console.WriteLine("Deserialized {0}:{1}",temp[i],temp.Length); Assert.AreEqual(temp[i], s12); s++; s12 = s.ToString(); } }
public void TestBoolean() { FileStream stream = new FileStream("Prova.bin", System.IO.FileMode.Create); CompactFormatter CFormatter = new CompactFormatter(); Interfaces.IStreamParser str = new JunkStreamParser(); CFormatter.RegisterStreamParser(str); long start = DateTime.Now.Ticks; Boolean s = true; Console.WriteLine( "Serializing and Deserializing {0} instances of type {1}", max, s.GetType().ToString() ); for (int i = 0; i < max; i++) { CFormatter.Serialize(stream, s); //Console.WriteLine("Serialized {0}",s); s = !s; } stream.Flush(); stream.Close(); stream = new FileStream("Prova.bin", System.IO.FileMode.Open); CompactFormatter CFormatter2 = new CompactFormatter(); str = new JunkStreamParser(); CFormatter2.RegisterStreamParser(str); Boolean[] temp = new Boolean[max]; for (int i = 0; i < max; i++) { temp[i] = (Boolean)CFormatter2.Deserialize(stream); } stream.Close(); long stop = DateTime.Now.Ticks; long ts = stop - start; Console.WriteLine("Elapsed Time:{0},{1},{2}", ts, start, stop); s = true; for (int i = 0; i < max; i++) { //Console.WriteLine("Deserialized {0}",temp[i]); Assert.AreEqual(temp[i], s); s = !s; } }
public object Deserialize(CompactFormatter parent, Stream serializationStream) { ArrayList arrayList1 = (ArrayList)parent.Deserialize(serializationStream); ArrayList arrayList2 = (ArrayList)parent.Deserialize(serializationStream); ArrayList arrayList3 = (ArrayList)parent.Deserialize(serializationStream); DataTable dataTable = new DataTable(); for (int index = 0; index < arrayList1.Count; ++index) { DataColumn column = new DataColumn(arrayList1[index].ToString(), Type.GetType(arrayList2[index].ToString())); dataTable.Columns.Add(column); } for (int index = 0; index < arrayList3.Count; ++index) { DataRow row = dataTable.NewRow(); row.ItemArray = (object[])arrayList3[index]; dataTable.Rows.Add(row); } dataTable.AcceptChanges(); return((object)dataTable); }
public void TestDateTime() { FileStream stream = new FileStream("Prova.bin", System.IO.FileMode.Create); CompactFormatter CFormatter = new CompactFormatter(); long start = DateTime.Now.Ticks; DateTime s = DateTime.Now; // Considering that i can't recreate correct time without saving it // i use here an array to store serialized data. DateTime[] temp = new DateTime[max]; Console.WriteLine( "Serializing and Deserializing {0} instances of type {1}", max, s.GetType().ToString() ); for (int i = 0; i < max; i++) { temp[i] = s; CFormatter.Serialize(stream, s); //Console.WriteLine("Serialized {0}",s); s = DateTime.Now; } stream.Flush(); stream.Close(); stream = new FileStream("Prova.bin", System.IO.FileMode.Open); CompactFormatter CFormatter2 = new CompactFormatter(); DateTime[] temp2 = new DateTime[max]; for (int i = 0; i < max; i++) { temp2[i] = (DateTime)CFormatter2.Deserialize(stream); } stream.Close(); long stop = DateTime.Now.Ticks; long ts = stop - start; Console.WriteLine("Elapsed Time:{0},{1},{2}", ts, start, stop); for (int i = 0; i < max; i++) { //Console.WriteLine("Deserialized {0}",temp2[i]); Assert.AreEqual(temp[i], temp2[i]); } }
public void TestGhostDataTable() { FileStream stream = new FileStream("Prova.bin", System.IO.FileMode.Create); CompactFormatter CFormatter = new CompactFormatter(); CFormatter.AddSurrogate(typeof(Surrogate.DefaultSurrogates)); CFormatter.AddOverrider(typeof(Surrogate.GhostDataTableOverrider)); long start = DateTime.Now.Ticks; DataTable s = new DataTable(); s.Columns.Add("Col1"); s.Columns.Add("Col2"); s.Rows.Add(new Object[] { 13, 14 }); Console.WriteLine( "Serializing and Deserializing {0} instances of type {1}", max, s.GetType().ToString() ); //for(int i = 0; i<max; i++) //{ CFormatter.Serialize(stream, s); //} stream.Flush(); stream.Close(); stream = new FileStream("Prova.bin", System.IO.FileMode.Open); CompactFormatter CFormatter2 = new CompactFormatter(); CFormatter2.AddOverrider(typeof(Surrogate.GhostDataTableOverrider)); CFormatter2.AddSurrogate(typeof(Surrogate.DefaultSurrogates)); DataTable temp; //for(int i = 0; i<max; i++) //{ temp = (DataTable)CFormatter2.Deserialize(stream); //} stream.Close(); long stop = DateTime.Now.Ticks; long ts = stop - start; Console.WriteLine("Elapsed Time:{0},{1},{2}", ts, start, stop); Assert.AreEqual(13, Int32.Parse((String)s.Rows[0]["Col1"])); Assert.AreEqual(temp.Rows.Count, s.Rows.Count); }
public void TestInt16() { FileStream stream = new FileStream("Prova.bin", System.IO.FileMode.Create); CompactFormatter CFormatter = new CompactFormatter(); long start = DateTime.Now.Ticks; Int16[] s = new Int16[max]; s[0] = 0; Console.WriteLine( "Serializing and Deserializing {0} instances of type {1}", max, s.GetType().ToString() ); for (int i = 1; i < max; i++) { //Console.WriteLine("Serialized {0}",s); s[i] = (short)((s[i - 1] + 1) % 32000); } CFormatter.Serialize(stream, s); stream.Flush(); stream.Close(); stream = new FileStream("Prova.bin", System.IO.FileMode.Open); CompactFormatter CFormatter2 = new CompactFormatter(); Int16[] temp = new Int16[max]; //for(int i = 0; i<max; i++) //{ temp = (Int16[])CFormatter2.Deserialize(stream); //} stream.Close(); long stop = DateTime.Now.Ticks; long ts = stop - start; Console.WriteLine("Elapsed Time:{0},{1},{2}", ts, start, stop); Int16 s2 = 0; for (int i = 0; i < max; i++) { //Console.WriteLine("Deserialized {0}",temp[i]); Assert.AreEqual(temp[i], s2); s2 = (short)((s2 + 1) % 32000); } }
public void TestUInt64() { FileStream stream = new FileStream("Prova.bin", System.IO.FileMode.Create); CompactFormatter CFormatter = new CompactFormatter(); long start = DateTime.Now.Ticks; UInt64[] s = new UInt64[max]; s[0] = 0; Console.WriteLine( "Serializing and Deserializing an array of type {1} composed by {0} elements", max, s.GetType().ToString() ); for (int i = 1; i < max; i++) { //Console.WriteLine("Serialized {0}",s); s[i] = s[i - 1] + 1; } CFormatter.Serialize(stream, s); stream.Flush(); stream.Close(); stream = new FileStream("Prova.bin", System.IO.FileMode.Open); CompactFormatter CFormatter2 = new CompactFormatter(); UInt64[] temp = new UInt64[max]; //for(int i = 0; i<max; i++) //{ temp = (UInt64[])CFormatter2.Deserialize(stream); //} stream.Close(); long stop = DateTime.Now.Ticks; long ts = stop - start; Console.WriteLine("Elapsed Time:{0},{1},{2}", ts, start, stop); UInt64 s2 = 0; for (int i = 0; i < max; i++) { //Console.WriteLine("Deserialized {0}",temp[i]); Assert.AreEqual(temp[i], s2); s2++; } }
public object Deserialize(CompactFormatter parent, System.IO.Stream serializationStream) { DataSet ds = new DataSet((String)parent.Deserialize(serializationStream)); ds.Namespace = (String)parent.Deserialize(serializationStream); ds.Prefix = (String)parent.Deserialize(serializationStream); ds.CaseSensitive = (bool)parent.Deserialize(serializationStream); //parent.Serialize(serializationStream,ds.Locale); ds.EnforceConstraints = (bool)parent.Deserialize(serializationStream); DataTable[] datatables = (DataTable[])parent.Deserialize(serializationStream); for (int i = 0; i < datatables.Length; i++) { ds.Tables.Add(datatables[i]); } //ForeignKeyConstraints ArrayList Constraints = (ArrayList)parent.Deserialize(serializationStream); SetForeignKeyConstraints(ds, Constraints); //Relations ArrayList Relations = (ArrayList)parent.Deserialize(serializationStream); SetRelations(ds, Relations); //ExtendedProperties ArrayList keys = (ArrayList)parent.Deserialize(serializationStream); ArrayList values = (ArrayList)parent.Deserialize(serializationStream); for (int i = 0; i < keys.Count; i++) { ds.ExtendedProperties.Add(keys[i], values[i]); } return(ds); }
public void TestEnumSerialization() { max = 1; FileStream stream = new FileStream("Prova.bin", System.IO.FileMode.Create); CompactFormatter CFormatter = new CompactFormatter(); long start = DateTime.Now.Ticks; DummyEnum s = DummyEnum.SECOND; Console.WriteLine( "Serializing and Deserializing {0} instances of type {1}", max, s.GetType().ToString() ); for (int i = 0; i < max; i++) { CFormatter.Serialize(stream, s); //Console.WriteLine("Serialized {0}",s); s = (DummyEnum)((int)(s + 1) % 3); } stream.Flush(); stream.Close(); stream = new FileStream("Prova.bin", System.IO.FileMode.Open); CompactFormatter CFormatter2 = new CompactFormatter(); DummyEnum[] temp = new DummyEnum[max]; for (int i = 0; i < max; i++) { temp[i] = (DummyEnum)CFormatter2.Deserialize(stream); } stream.Close(); long stop = DateTime.Now.Ticks; long ts = stop - start; Console.WriteLine("Elapsed Time:{0},{1},{2}", ts, start, stop); s = DummyEnum.SECOND; for (int i = 0; i < max; i++) { //Console.WriteLine("Deserialized {0}",temp[i]); Assert.AreEqual(temp[i], s); s = (DummyEnum)((int)(s + 1) % 3); } }
public void ObjectTest() { FileStream stream = new FileStream("Prova.bin", System.IO.FileMode.Create); CompactFormatter CFormatter = new CompactFormatter(); SelfReferencingObject[] s = new SelfReferencingObject[max]; for (int i = 0; i < max; i++) { s[i] = new SelfReferencingObject(i); } Console.WriteLine( "Serializing and Deserializing {0} instances of type {1}", max, s.GetType().ToString() ); long start = DateTime.Now.Ticks; for (int i = 0; i < max; i++) { CFormatter.Serialize(stream, s[i]); } stream.Flush(); stream.Close(); stream = new FileStream("Prova.bin", System.IO.FileMode.Open); CompactFormatter CFormatter2 = new CompactFormatter(); SelfReferencingObject[] temp = new SelfReferencingObject[max]; for (int i = 0; i < max; i++) { temp[i] = (SelfReferencingObject)CFormatter2.Deserialize(stream); } stream.Close(); long stop = DateTime.Now.Ticks; long ts = stop - start; Console.WriteLine("Elapsed Time:{0},{1},{2}", ts, start, stop); for (int i = 0; i < max; i++) { //Console.WriteLine("Deserialized {0}",temp[i]); Assert.AreEqual(temp[i], s[i]); } }
public void TestSingle() { FileStream stream = new FileStream("Prova.bin", System.IO.FileMode.Create); CompactFormatter CFormatter = new CompactFormatter(); long start = DateTime.Now.Ticks; int max = 15; Single s = 12.7F; Console.WriteLine( "Serializing and Deserializing {0} instances of type {1}", max, s.GetType().ToString() ); for (int i = 0; i < max; i++) { CFormatter.Serialize(stream, s); //Console.WriteLine("Serialized {0}",s); s++; } stream.Flush(); stream.Close(); stream = new FileStream("Prova.bin", System.IO.FileMode.Open); CompactFormatter CFormatter2 = new CompactFormatter(); Single[] temp = new Single[max]; for (int i = 0; i < max; i++) { temp[i] = (Single)CFormatter2.Deserialize(stream); } stream.Close(); long stop = DateTime.Now.Ticks; long ts = stop - start; Console.WriteLine("Elapsed Time:{0},{1},{2}", ts, start, stop); s = 12.7F; for (int i = 0; i < max; i++) { //Console.WriteLine("Deserialized {0}",temp[i]); Assert.AreEqual(temp[i], s); s++; } }
public void TestChar() { FileStream stream = new FileStream("Prova.bin", System.IO.FileMode.Create); CompactFormatter CFormatter = new CompactFormatter(); long start = DateTime.Now.Ticks; Char[] s = new Char[max]; s[0] = 'a'; Console.WriteLine( "Serializing and Deserializing an array of type {1} composed by {0} elements", max, s.GetType().ToString() ); for (int i = 1; i < max; i++) { //Console.WriteLine("Serialized {0}",s[i-1]); s[i] = ((char)((s[i - 1] + 1) % (32768))); } CFormatter.Serialize(stream, s); stream.Flush(); stream.Close(); stream = new FileStream("Prova.bin", System.IO.FileMode.Open); CompactFormatter CFormatter2 = new CompactFormatter(); Char[] temp = new Char[max]; temp = (Char[])CFormatter2.Deserialize(stream); stream.Close(); long stop = DateTime.Now.Ticks; long ts = stop - start; Console.WriteLine("Elapsed Time:{0},{1},{2}", ts, start, stop); Char s2 = 'a'; for (int i = 0; i < max; i++) { //Console.WriteLine("{0}={1}",temp.Length,s2); Assert.AreEqual(s2, temp[i]); s2 = ((Char)((s2 + 1) % 32768)); } }