public void ShouldFilterActiveItems() { _itemFilters = new ItemFilters(); var items = new List <Item> { new Item() { Id = 1, LastChecked = DateTime.MinValue, CheckInterval = 10000, IsActive = true }, new Item() { Id = 2, LastChecked = DateTime.MinValue, CheckInterval = 10000, IsActive = false }, new Item() { Id = 3, LastChecked = DateTime.MinValue, CheckInterval = 300000, IsActive = true } }; var expectedItems = items.Where(x => x.Id != 2).ToList(); var actualItems = _itemFilters.GetScheduledList(items); Assert.AreEqual(expectedItems, actualItems); }
public void ShouldFilterByCheckInterval() { _itemFilters = new ItemFilters(); var items = new List <Item> { new Item() { Id = 1, CheckInterval = 10, LastChecked = DateTime.Now.AddMilliseconds(-10), IsActive = true }, new Item() { Id = 2, CheckInterval = 10, LastChecked = DateTime.Now.AddMilliseconds(-9), IsActive = false }, new Item() { Id = 3, CheckInterval = 10, LastChecked = DateTime.Now.AddMilliseconds(-11), IsActive = true } }; var expectedItems = items.Where(x => x.Id != 2).ToList(); var actualItems = _itemFilters.GetScheduledList(items); Assert.AreEqual(expectedItems, actualItems); }
public void Do() { //var result = new List<UsernameEmailItem>(); //GET ALL ITEMS var items = _itemsRepository.GetList(); _logger.Info("\n --> ITEMS FROM DATABASE"); _logger.Info("\n -->"); foreach (var item in items) { _logger.Info(item.Name); } _logger.Info("GETTING ITEMS TO CHECK"); //ITEMS TO CHECK _logger.Info("\n -->ITEMS TO CHECK"); var scheduledItems = _itemFilters.GetScheduledList(items); foreach (var item in scheduledItems) { _logger.Info(item.Name); } //ITEMS WITH NEW CONTENT _logger.Info("\n -- > ITEMS WITH NEW CONTENT"); var outdatedItems = _itemFilters.GetOutdatedList(scheduledItems); foreach (var item in outdatedItems) { _logger.Info(item.Name); } //UPDATING ITEMS _logger.Info("\n --> UPDATING ITEMS"); UpdateOutdatedItems(outdatedItems); UpdateNonOutdatedItems(scheduledItems, outdatedItems); //FILTERING ITEMS TO SEND EMAIL //result = _itemFilters.GetEmailContacts(outdatedItems); //_logger.Info($"Changed items to send email: {result.Count}"); //return result; }