コード例 #1
0
        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);
        }
コード例 #2
0
        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);
        }