public void RegistrationMessageIsAcceptedAndItsCallbackInvoked() { var waitHandle = new AutoResetEvent(false); var callbackCalled = false; var msg = new RegisterMessage { ComponentType = ComponentType.TaskManager, ParallelThreads = 5, SolvableProblems = new List<string> {"dvrp"} }; var rawMsg = _marshaller.Marshall(new Message[] {msg}); ProcessedDataCallback c = response => { callbackCalled = true; waitHandle.Set(); }; _processor.StartProcessing(); _processor.EnqueueDataToProcess(rawMsg, null, c); waitHandle.WaitOne(5000); _processor.StopProcessing(); Assert.IsTrue(callbackCalled); }
public void RegistrationMessageIsAcceptedAndRegisterResponseMessageIsPassedBack() { var waitHandle = new AutoResetEvent(false); var msg = new RegisterMessage { ParallelThreads = 5, SolvableProblems = new List<string> {"dvrp"}, ComponentType = ComponentType.ComputationalNode }; var rawMsg = _marshaller.Marshall(new Message[] {msg}); Message outputMessage = null; ProcessedDataCallback c = response => { outputMessage = _marshaller.Unmarshall(response)[0]; waitHandle.Set(); }; _processor.StartProcessing(); _processor.EnqueueDataToProcess(rawMsg, null, c); waitHandle.WaitOne(10000); _processor.StopProcessing(); Assert.IsInstanceOfType(outputMessage, typeof (RegisterResponseMessage)); }
public void RegisterMessageXmlIsProperlySerializedAndDeserialized() { var message = new RegisterMessage { ComponentType = ComponentType.ComputationalNode, Deregistration = true, Id = 5, ParallelThreads = 10, SolvableProblems = new List<string> {"Dvrp"} }; var serializedMessage = _serializer.Serialize(message); var deserializedMessage = _serializer.Deserialize(serializedMessage); Assert.IsInstanceOfType(deserializedMessage, typeof (RegisterMessage)); }