public void GetBuffer_UseGeneric() { var binarySerializer = new BinarySerializer(); var buffer = binarySerializer.GetBuffer(new TestHelpers.Customer(32)); var customer = binarySerializer.Deserializer<Customer>(buffer); Assert.IsInstanceOfType(customer, typeof(Customer)); }
public void GetBufferTest() { var binarySerializer = new BinarySerializer(); var buffer = binarySerializer.GetBuffer(new TestHelpers.Customer(21)); var customer = binarySerializer.Deserializer(buffer, typeof(Customer)); Assert.IsInstanceOfType(customer, typeof(Customer)); }
public void DeserializeTest() { BinarySerializer serializer = new BinarySerializer(); var data = new List<string>() { "f", "s" }; MemoryStream stream = serializer.Serialize(data); var obj2 = serializer.Deserializer<List<string>>(stream); Assert.AreEqual(data[0], obj2[0]); }
public void Call_SerializeandDeserialisedMethodInfo_Method_Successful() { var customer = new Customer(-1); var method = typeof(Customer).GetMethod("UpdateName"); var binarySerializer = new BinarySerializer(); var buffer = binarySerializer.GetBuffer(method); var methodInfo = (MethodInfo)binarySerializer.Deserializer(buffer, typeof(MethodInfo)); Assert.IsInstanceOfType(methodInfo, typeof(MethodInfo)); Assert.AreEqual("UpdateName", methodInfo.Name); object[] parameters = new object[1]; parameters[0] = "XXXX"; var result = methodInfo.Invoke(customer, parameters); Assert.AreEqual("XXXX", customer.Lastname); }
private static MethodInfo UnPackNetMQFrame( int FrameCount, ref bool stopSignal, BinarySerializer serializer, NetMQFrame frame, MethodInfo methodinfo, List<object> methodParameters, ref bool typeParameter, ref Type type) { string address; byte[] messageAsBytes; int numberOfParameters; if (FrameCount == 0) { address = serializer.GetString(frame.Buffer); } if (FrameCount == 1) { messageAsBytes = frame.Buffer; string stopMessage = serializer.GetString(messageAsBytes); if (stopMessage.ToLower() == "stop") { stopSignal = true; } } if (FrameCount == 2) { methodinfo = (MethodInfo)serializer.Deserializer(frame.Buffer, typeof(MethodInfo)); } if (FrameCount == 3) { numberOfParameters = int.Parse(serializer.GetString(frame.Buffer).Replace("ParameterCount:", string.Empty)); } if (FrameCount > 3) { if (typeParameter) { type = (Type)serializer.Deserializer(frame.Buffer, typeof(Type)); typeParameter = false; } else { var parameter = serializer.Deserializer(frame.Buffer, type); methodParameters.Add(parameter); typeParameter = true; } } return methodinfo; }
public void SerializeMethodInfo() { var customer = new Customer(12); var method = typeof(Customer).GetMethod("UpdateName"); var binarySerializer = new BinarySerializer(); var buffer = binarySerializer.GetBuffer(method); var methodInfo = (MethodInfo)binarySerializer.Deserializer(buffer, typeof(MethodInfo)); Assert.IsInstanceOfType(methodInfo, typeof(MethodInfo)); Assert.AreEqual("UpdateName", methodInfo.Name); Assert.AreEqual(method, methodInfo); }