public void SaveRequestEntry_MultipleRequestEntry_ShouldUpdateTheQueue () { var sut = new TitanicMemoryIO (); for (var i = 0; i < 10; i++) sut.SaveRequestEntry (new RequestEntry { RequestId = Guid.NewGuid () }); sut.NumberOfRequests.Should ().Be (10, "because we just added 10 Requests"); }
public void SaveRequestEntry_ValidRequestEntry_ShouldUpdateTheQueue () { var sut = new TitanicMemoryIO (); var request = new NetMQMessage (); var id = Guid.NewGuid (); var entry = new RequestEntry { RequestId = id, Request = request }; sut.SaveRequestEntry (entry); sut.NumberOfRequests.Should ().Be (1, "because we just added one"); var result = sut.GetRequestEntry (id); result.RequestId.Should ().Be (id); }
public void SaveNewRequest_GuidAndRequest_ShouldUpdateQueue () { var sut = new TitanicMemoryIO (); var request = new NetMQMessage (); request.Push ("A Request"); var id = Guid.NewGuid (); var entry = new RequestEntry { RequestId = id, Request = request }; sut.SaveRequestEntry (entry); var result = sut.GetRequestEntry (id); sut.NumberOfRequests.Should ().Be (1, "because we just added one"); result.RequestId.Should ().Be (id); result.Request.ShouldBeEquivalentTo (request); result.Position.Should ().Be (-1); result.State.Should ().Be (RequestEntry.Is_Pending); }
public void CloseRequest_ExistingEntries_ShouldAlterQueueAppropriate() { var sut = new TitanicMemoryIO (); for (var i = 0; i < 10; i++) sut.SaveRequestEntry (i % 3 == 0 ? new RequestEntry { RequestId = Guid.NewGuid (), State = RequestEntry.Is_Closed } : new RequestEntry { RequestId = Guid.NewGuid () }); sut.NumberOfRequests.Should ().Be (10); var result = sut.GetRequestEntries (e => e.State == RequestEntry.Is_Closed); result.Count ().Should ().Be (4); foreach (var requestEntry in result) sut.CloseRequest (requestEntry.RequestId); sut.NumberOfRequests.Should ().Be (6); }
public void SaveNewRequest_GuidOnly_ShouldUpdateQueue () { var sut = new TitanicMemoryIO (); var request = new NetMQMessage (); var id = Guid.NewGuid (); var entry = new RequestEntry { RequestId = id, Request = request }; sut.SaveRequestEntry (entry); var result = sut.GetRequestEntry (id); result.RequestId.Should ().Be (id); result.Request.ShouldBeEquivalentTo (request); result.Position.Should ().Be (-1); result.State.Should ().Be (RequestEntry.Is_Pending); }
public void GetNotClosedEntries_ExistingEntriesNoResult_ShouldReturnCorrectSequence () { var sut = new TitanicMemoryIO (); for (var i = 0; i < 10; i++) sut.SaveRequestEntry (new RequestEntry { RequestId = Guid.NewGuid (), State = RequestEntry.Is_Closed }); sut.NumberOfRequests.Should ().Be (10); var result = sut.GetNotClosedRequestEntries (); result.Count ().Should ().Be (0); }
public void GetRequestEntries_ExistingEntriesNoResultPredicate_ShouldReturnDefaultSequence () { var sut = new TitanicMemoryIO (); for (var i = 0; i < 10; i++) sut.SaveRequestEntry (i % 2 == 0 ? new RequestEntry { RequestId = Guid.NewGuid (), State = RequestEntry.Is_Processed } : new RequestEntry { RequestId = Guid.NewGuid () }); sut.NumberOfRequests.Should ().Be (10); var result = sut.GetRequestEntries (e => e.State == RequestEntry.Is_Closed); result.Should ().BeOfType (typeof (RequestEntry[])); result.Count ().Should ().Be (0); }
public void GetRequestEntries_ExistingEntriesCorrectPredicate_ShouldReturnCorrectSequence () { var sut = new TitanicMemoryIO (); for (var i = 0; i < 10; i++) sut.SaveRequestEntry (i % 2 == 0 ? new RequestEntry { RequestId = Guid.NewGuid (), State = RequestEntry.Is_Processed } : new RequestEntry { RequestId = Guid.NewGuid () }); var result = sut.GetRequestEntries (e => e.State == RequestEntry.Is_Processed); result.Should ().BeOfType (typeof (RequestEntry[])); result.Count ().Should ().Be (5); result.All (e => e.State == RequestEntry.Is_Processed).Should ().BeTrue (); }
public void GetRequestEntry_ExistingEntry_ShouldReturnDefaultObject () { var sut = new TitanicMemoryIO (); var id = Guid.NewGuid (); sut.SaveRequestEntry (new RequestEntry { RequestId = id }); var result = sut.GetRequestEntry (id); result.RequestId.Should ().Be (id); result.State.Should ().Be (RequestEntry.Is_Pending); result.Position.Should ().Be (-1); result.Request.Should ().BeNull (); }
public void SaveProcessedRequest_ExistingRequestWithRequestData_ShouldUpdateEntryAppropriate () { var sut = new TitanicMemoryIO (); var request = new NetMQMessage (); request.Push ("Processed Request Data"); var id = Guid.NewGuid (); var entry = new RequestEntry { RequestId = id, Request = request }; sut.SaveRequestEntry (entry); sut.SaveProcessedRequestEntry (entry); var result = sut.GetRequestEntry (id); result.RequestId.Should ().Be (id); result.Request.ShouldBeEquivalentTo (request); result.Position.Should ().Be (-1); result.State.Should ().Be (RequestEntry.Is_Processed); }