def test_mapreduce_when_aggregation_fails(self, logger, mapreduce, aggregate, manager): # when the attempt to use aggregation fails, mapreduce is used and a message is logged manager.aggregate.side_effect = OperationFailure("mocked failure") purge._duplicate_key_id_generator(models.RPM) self.assertFalse(aggregate.called) self.assertTrue(mapreduce.called) self.assertEqual(logger.call_count, 1)
def test_aggregation_by_default(self, mapreduce, aggregate, manager): # aggregate raises no exception, aggregation generator is used manager.aggregate.return_value = None purge._duplicate_key_id_generator(models.RPM) self.assertTrue(aggregate.called) self.assertFalse(mapreduce.called)