public void price_enumerable() { Assert.Throws<ArgumentNullException>(() => ((IEnumerable<Announcement>)null).Price()); var announcements = new[] { null, new Announcement(), new Announcement { Price = 1 }, new Announcement { Price = 2 } }; Assert.Equal(3, announcements.Price().Count()); Assert.Equal(2, announcements.Price(0).Count()); Assert.Empty(announcements.Price(3)); Assert.Equal(1, announcements.Price(0, 1).Count()); Assert.Equal(2, announcements.Price(1, 2).Count()); Assert.Empty(announcements.Price(to: 0)); Assert.Equal(1, announcements.Price(to: 1).Count()); Assert.Equal(2, announcements.Price(to: 3).Count()); }