public void DoSyncSlaveSimpleTest() { using (SlaveManager currentSlaveManager = new SlaveManager()) { IIPCGUID slaveReceaverGUID = new IPCReceaverGUID(currentSlaveManager.LaunchSlave()); // wait for slave is launched and ininialized; Thread.CurrentThread.Join(3000); using (BaseIPCDispatcher dispatcher = new BaseIPCDispatcher(slaveReceaverGUID)) { TestSyncMessage test = new TestSyncMessage(dispatcher.Receaver); test.StrIn = "Hi Slave!"; test.TimeOut = SlaveResponces.SyncMessageSlaveDelay + 2000; IPCDispatchResult dispatchResult = dispatcher.Dispatch(test); Assert.IsTrue(dispatchResult == IPCDispatchResult.Success, "Unable to send message error because of the reason {0}", dispatchResult); Assert.IsTrue(String.Equals(test.StrOut, SlaveResponces.TestSyncResponceString), "Time is up"); } using (BaseIPCDispatcher dispatcher = new BaseIPCDispatcher(slaveReceaverGUID)) { TestSyncMessage test = new TestSyncMessage(dispatcher.Receaver); test.StrIn = "Hi Slave!"; test.TimeOut = SlaveResponces.SyncMessageSlaveDelay - 2000; IPCDispatchResult dispatchResult = dispatcher.Dispatch(test); Assert.IsTrue(dispatchResult == IPCDispatchResult.Timeout, "Timeout is an expected but {0} is dispatch result", dispatchResult); } } }
public void DoReceaverNotExistsTest() { IIPCGUID receaverGUID = new IPCReceaverGUID(NonExistentPID); using (BaseIPCDispatcher dispatcher = new BaseIPCDispatcher(receaverGUID)) { TestAsyncMessage test = new TestAsyncMessage(receaverGUID); IPCDispatchResult tmpResult = dispatcher.Dispatch(test); Assert.IsTrue(tmpResult == IPCDispatchResult.ReceaverNotExists, "Receaver not exists but dispatch result is {0}", tmpResult); } }
public void DoInvalidMessageTest() { IIPCGUID receaverGUID = new IPCReceaverGUID(); using (BaseIPCDispatcher dispatcher = new BaseIPCDispatcher(ReceaverHolder.GlobalApplicationReceaver.ReceaverID)) { TestInvalidMessage test = new TestInvalidMessage(receaverGUID); IPCDispatchResult tmpResult = dispatcher.Dispatch(test); Assert.IsTrue(tmpResult == IPCDispatchResult.InvalidMessageClass, "Receaver not exists but dispatch result is {0}", tmpResult); } }