public void ExistsMessage_ExistingMessageWrongState_ShouldUpdateCorrectRequestEntry() { const int id_to_retrieve = 7; var sut = new TitanicMemoryIO (); var ids = new Guid[10]; for (var i = 0; i < 10; i++) { ids[i] = Guid.NewGuid (); var request = new NetMQMessage (); request.Push (string.Format ("Request #{0}", i)); request.Push ("echo"); sut.SaveMessage (TitanicOperation.Request, ids[i], request); } sut.ExistsMessage (TitanicOperation.Reply, ids[id_to_retrieve]).Should ().BeFalse (); }
public void ExistsMessage_NotExistingMessage_ShouldUpdateCorrectRequestEntry () { var sut = new TitanicMemoryIO (); var ids = new Guid[10]; for (var i = 0; i < 10; i++) { ids[i] = Guid.NewGuid (); var request = new NetMQMessage (); request.Push ($"Request #{i}"); request.Push ("echo"); sut.SaveMessage (TitanicOperation.Request, ids[i], request); } sut.ExistsMessage (TitanicOperation.Request, Guid.NewGuid ()).Should ().BeFalse (); }
public void SaveMessage_UpdateExistingMessage_ShouldUpdateCorrectRequestEntry () { const int id_to_retrieve = 7; var sut = new TitanicMemoryIO (); var ids = new Guid[10]; for (var i = 0; i < 10; i++) { ids[i] = Guid.NewGuid (); var request = new NetMQMessage (); request.Push ($"Request #{i}"); request.Push ("echo"); sut.SaveMessage (TitanicOperation.Request, ids[i], request); } sut.NumberOfRequests.Should ().Be (10); var reply = new NetMQMessage (); reply.Push ($"This is a REPLY to Request #{id_to_retrieve}"); reply.Push ("echo"); sut.SaveMessage (TitanicOperation.Reply, ids[id_to_retrieve], reply).Should ().BeTrue (); sut.NumberOfRequests.Should ().Be (10); var result = sut.GetRequestEntry (ids[id_to_retrieve]); result.State.Should ().Be (RequestEntry.Is_Processed); result.RequestId.Should ().Be (ids[id_to_retrieve]); result.Request.Should ().Equal (reply); }
public void SaveMessage_NewMessage_ShouldUpdateQueue () { var sut = new TitanicMemoryIO (); var id = Guid.NewGuid (); var request = new NetMQMessage (); request.Push ("Request #1"); request.Push ("echo"); sut.SaveMessage (TitanicOperation.Request, id, request).Should ().BeTrue (); sut.NumberOfRequests.Should ().Be (1); var result = sut.GetRequestEntry (id); result.Request.Should ().Equal (request); result.State.Should ().Be (RequestEntry.Is_Pending); }