public void IsUpToDate_DateOutSideHour_ReturnsFalse() { var target = new SearchThreadPosts() { LastUpdated = DateTime.Now.AddHours(-2) }; Assert.IsFalse(target.IsUpToDate(null)); }
private IDnaDataReaderCreator CreateMockCreator(SearchThreadPosts searchThreadPosts, string spName) { Queue<int> postIdQueue = new Queue<int>(); Queue<int> rankQueue = new Queue<int>(); Queue<string> textQueue = new Queue<string>(); foreach (var post in searchThreadPosts.Posts) { postIdQueue.Enqueue(post.PostId); rankQueue.Enqueue(post.Rank); textQueue.Enqueue(post.Text); } var reader = Mocks.DynamicMock<IDnaDataReader>(); reader.Stub(x => x.HasRows).Return(true); reader.Stub(x => x.Read()).Return(true).Repeat.Times(searchThreadPosts.Posts.Count); reader.Stub(x => x.GetInt32NullAsZero("totalresults")).Return(searchThreadPosts.TotalPostCount); reader.Stub(x => x.GetInt32NullAsZero("EntryID")).Return(0).WhenCalled(x => x.ReturnValue = postIdQueue.Dequeue()); reader.Stub(x => x.GetInt32NullAsZero("forumid")).Return(searchThreadPosts.ForumId); reader.Stub(x => x.GetInt32NullAsZero("threadid")).Return(searchThreadPosts.ThreadId); reader.Stub(x => x.GetInt32NullAsZero("rank")).Return(0).WhenCalled(x => x.ReturnValue =rankQueue.Dequeue()); reader.Stub(x => x.GetStringNullAsEmpty("text")).Return("").WhenCalled(x => x.ReturnValue = textQueue.Dequeue()); reader.Stub(x => x.DoesFieldExist("forumid")).Return(true); reader.Stub(x => x.DoesFieldExist("EntryID")).Return(true); reader.Stub(x => x.DoesFieldExist("threadid")).Return(true); reader.Stub(x => x.DoesFieldExist("rank")).Return(true); reader.Stub(x => x.DoesFieldExist("text")).Return(true); var readerCreator = Mocks.DynamicMock<IDnaDataReaderCreator>(); readerCreator.Stub(x => x.CreateDnaDataReader(spName)).Return(reader); return readerCreator; }
public void IsUpToDate_DateWithinHour_ReturnsTrue() { var target = new SearchThreadPosts() { LastUpdated = DateTime.Now.AddMinutes(-1) }; Assert.IsTrue(target.IsUpToDate(null)); }
private SearchThreadPosts GetListOfSearchPosts(int siteId, int forumId, int threadId, string textToSearch, int count, DateTime lastUpdated) { var searchThreadPosts = new SearchThreadPosts() { TotalPostCount = count, LastUpdated = lastUpdated, ForumId = forumId, ThreadId = threadId, SearchTerm = textToSearch, SiteId = siteId }; for (int i = 0; i < count; i++) { var searchThreadPost = new SearchThreadPost() { ForumId = forumId, ThreadId = threadId, }; var rand = new Random(DateTime.Now.Millisecond); searchThreadPost.PostId = rand.Next(Int32.MaxValue); searchThreadPost.Rank= rand.Next(Int32.MaxValue); searchThreadPost.Text = RandomStringGenerator.NextString(5) + textToSearch + RandomStringGenerator.NextString(5); searchThreadPosts.Posts.Add(searchThreadPost); } return searchThreadPosts; }