public void GetFactsFromTrackerWithEvents_ReturnsFacts() { InitializeFactProviderWithCalculators(); var tracker = TestingMethods.CreateTrackerWithDefaultCustomization(Guid.NewGuid()); var event1 = TestingMethods.CreateEvent(tracker.Id, tracker.CreatorId); var event2 = TestingMethods.CreateEvent(tracker.Id, tracker.CreatorId); const int expected = 2; var facts = _factProvider .GetFacts(new [] { new TrackerWithItsEvents(tracker, new [] { event1, event2 }) }); var firstFact = facts.First(); var secondFact = facts.Last(); Assert.AreEqual(expected, facts.Count); Assert.AreEqual("Самая насыщенная событиями неделя", firstFact.FactName); Assert.AreEqual("Самый насыщенный событиями день", secondFact.FactName); }
private void UpdateUserGeneralFacts(Guid userId, IEnumerable <EventTracker> userTrackers) { var trackersWithEvents = new List <TrackerWithItsEvents>(); foreach (var tracker in userTrackers) { var events = _eventRepository.LoadAllTrackerEvents(tracker.Id); trackersWithEvents.Add(new TrackerWithItsEvents(tracker, events)); } var updatedFacts = _generalFactProvider.GetFacts(trackersWithEvents); _multipleFactsRepository.CreateUserGeneralFacts(userId, updatedFacts); }