def test_pruneBugWatchActivity_leaves_most_recent(self): # BugWatchActivityPruner.pruneBugWatchActivity() will delete all # but the n most recent BugWatchActivity items for a bug watch, # where n is determined by checkwatches.scheduler.MAX_SAMPLE_SIZE. for i in range(5): self.bug_watch.addActivity(message="Activity %s" % i) switch_dbuser('garbo') self.pruner = BugWatchActivityPruner(BufferLogger()) self.addCleanup(self.pruner.cleanUp) # MAX_SAMPLE_SIZE + 1 created in setUp(), and 5 more created # just above. self.assertEqual(MAX_SAMPLE_SIZE + 6, self.bug_watch.activity.count()) # Run the pruner while not self.pruner.isDone(): self.pruner(chunk_size=3) # Only MAX_SAMPLE_SIZE items should be left. self.assertEqual(MAX_SAMPLE_SIZE, self.bug_watch.activity.count()) # They should be the most recent items - the ones created at the # start of this test. messages = [activity.message for activity in self.bug_watch.activity] for i in range(MAX_SAMPLE_SIZE): self.assertIn("Activity %s" % i, messages)
def test_pruneBugWatchActivity_leaves_most_recent(self): # BugWatchActivityPruner.pruneBugWatchActivity() will delete all # but the n most recent BugWatchActivity items for a bug watch, # where n is determined by checkwatches.scheduler.MAX_SAMPLE_SIZE. for i in range(5): self.bug_watch.addActivity(message="Activity %s" % i) switch_dbuser('garbo') self.pruner = BugWatchActivityPruner(BufferLogger()) self.addCleanup(self.pruner.cleanUp) # MAX_SAMPLE_SIZE + 1 created in setUp(), and 5 more created # just above. self.assertEqual(MAX_SAMPLE_SIZE + 6, self.bug_watch.activity.count()) # Run the pruner while not self.pruner.isDone(): self.pruner(chunk_size=3) # Only MAX_SAMPLE_SIZE items should be left. self.assertEqual(MAX_SAMPLE_SIZE, self.bug_watch.activity.count()) # They should be the most recent items - the ones created at the # start of this test. messages = [activity.message for activity in self.bug_watch.activity] for i in range(MAX_SAMPLE_SIZE): self.failUnless("Activity %s" % i in messages)
class TestBugWatchActivityPruner(TestCaseWithFactory): """TestCase for the BugWatchActivityPruner.""" layer = LaunchpadZopelessLayer def setUp(self): super(TestBugWatchActivityPruner, self).setUp( '*****@*****.**') self.bug_watch = self.factory.makeBugWatch() for i in range(MAX_SAMPLE_SIZE + 1): self.bug_watch.addActivity() transaction.commit() def test_pruneBugWatchActivity_leaves_most_recent(self): # BugWatchActivityPruner.pruneBugWatchActivity() will delete all # but the n most recent BugWatchActivity items for a bug watch, # where n is determined by checkwatches.scheduler.MAX_SAMPLE_SIZE. for i in range(5): self.bug_watch.addActivity(message="Activity %s" % i) switch_dbuser('garbo') self.pruner = BugWatchActivityPruner(BufferLogger()) self.addCleanup(self.pruner.cleanUp) # MAX_SAMPLE_SIZE + 1 created in setUp(), and 5 more created # just above. self.assertEqual(MAX_SAMPLE_SIZE + 6, self.bug_watch.activity.count()) # Run the pruner while not self.pruner.isDone(): self.pruner(chunk_size=3) # Only MAX_SAMPLE_SIZE items should be left. self.assertEqual(MAX_SAMPLE_SIZE, self.bug_watch.activity.count()) # They should be the most recent items - the ones created at the # start of this test. messages = [activity.message for activity in self.bug_watch.activity] for i in range(MAX_SAMPLE_SIZE): self.failUnless("Activity %s" % i in messages)
class TestBugWatchActivityPruner(TestCaseWithFactory): """TestCase for the BugWatchActivityPruner.""" layer = LaunchpadZopelessLayer def setUp(self): super(TestBugWatchActivityPruner, self).setUp('*****@*****.**') self.bug_watch = self.factory.makeBugWatch() for i in range(MAX_SAMPLE_SIZE + 1): self.bug_watch.addActivity() transaction.commit() def test_pruneBugWatchActivity_leaves_most_recent(self): # BugWatchActivityPruner.pruneBugWatchActivity() will delete all # but the n most recent BugWatchActivity items for a bug watch, # where n is determined by checkwatches.scheduler.MAX_SAMPLE_SIZE. for i in range(5): self.bug_watch.addActivity(message="Activity %s" % i) switch_dbuser('garbo') self.pruner = BugWatchActivityPruner(BufferLogger()) self.addCleanup(self.pruner.cleanUp) # MAX_SAMPLE_SIZE + 1 created in setUp(), and 5 more created # just above. self.assertEqual(MAX_SAMPLE_SIZE + 6, self.bug_watch.activity.count()) # Run the pruner while not self.pruner.isDone(): self.pruner(chunk_size=3) # Only MAX_SAMPLE_SIZE items should be left. self.assertEqual(MAX_SAMPLE_SIZE, self.bug_watch.activity.count()) # They should be the most recent items - the ones created at the # start of this test. messages = [activity.message for activity in self.bug_watch.activity] for i in range(MAX_SAMPLE_SIZE): self.assertIn("Activity %s" % i, messages)