def generate_aggregated_activities(self, diff=0): aggregator = RecentVerbAggregator() activities = [] for x in range(1, 20 + diff): activity = Activity(x, LoveVerb, Pin(id=x)) activities.append(activity) aggregated_activities = aggregator.aggregate(activities) return aggregated_activities
def setUp(self): from stream_framework.verbs.base import Love as LoveVerb self.serializer = self.serialization_class( **self.serialization_class_kwargs) self.activity = FakeActivity(1, LoveVerb, 1, 1, datetime.datetime.now(), {}) self.activity.extra_context = self.activity_extra_context aggregator = RecentVerbAggregator() self.aggregated_activity = aggregator.aggregate([self.activity])[0] self.args = () self.kwargs = {}
def test_aggregated_remove(self): activities = [] for x in range(1, 101): activity_object = Pin(id=x) activity = Activity(x, LoveVerb, activity_object) activities.append(activity) aggregator = RecentVerbAggregator() aggregated_activities = aggregator.aggregate(activities) aggregated = aggregated_activities[0] for activity in activities: try: aggregated.remove(activity) except (ActivityNotFound, ValueError): pass self.assertEqual(len(aggregated.activities), 1) self.assertEqual(aggregated.activity_count, 72)
def test_aggregated_properties(self): activities = [] for x in range(1, 101): activity_object = Pin(id=x) activity = Activity(x, LoveVerb, activity_object) activities.append(activity) aggregator = RecentVerbAggregator() aggregated_activities = aggregator.aggregate(activities) aggregated = aggregated_activities[0] self.assertEqual(aggregated.verbs, [LoveVerb]) self.assertEqual(aggregated.verb, LoveVerb) self.assertEqual(aggregated.actor_count, 100) self.assertEqual(aggregated.minimized_activities, 85) self.assertEqual(aggregated.other_actor_count, 98) self.assertEqual(aggregated.activity_count, 100) self.assertEqual(aggregated.object_ids, range(86, 101)) # the other ones should be dropped self.assertEqual(aggregated.actor_ids, range(86, 101)) self.assertEqual(aggregated.is_seen(), False) self.assertEqual(aggregated.is_read(), False)
def generate_aggregated_activities(self, activities): aggregator = RecentVerbAggregator() aggregated_activities = aggregator.aggregate(activities) return aggregated_activities