public void SortPosts_PostAccumulatedPosts_UsesStableSortAlgorithm() { CollectPosts collectPosts = new CollectPosts(); SortPosts sortPosts = new SortPosts(collectPosts, "date", new Report()); sortPosts.Posts.Add(new Post() { Date = new Date(2010, 8, 5), Note = "1" }); sortPosts.Posts.Add(new Post() { Date = new Date(2010, 5, 5), Note = "2" }); sortPosts.Posts.Add(new Post() { Date = new Date(2010, 5, 5), Note = "3" }); sortPosts.Posts.Add(new Post() { Date = new Date(2010, 3, 5), Note = "4" }); sortPosts.PostAccumulatedPosts(); Assert.Equal("4", collectPosts.Posts[0].Note); Assert.Equal("2", collectPosts.Posts[1].Note); // Posts with equal key keep original order (2, 3) Assert.Equal("3", collectPosts.Posts[2].Note); Assert.Equal("1", collectPosts.Posts[3].Note); }
public void SortPosts_PostAccumulatedPosts_CallsBaseHandler() { CollectPosts collectPosts = new CollectPosts(); TestSortPosts sortPosts = new TestSortPosts(collectPosts, "date", new Report()); sortPosts.Posts.Add(new Post() { Date = new Date(2010, 8, 5), Note = "1" }); sortPosts.PostAccumulatedPosts(); // No exception expected; Handle is not called }