def test_serialize_queryset_by_batch_with_serializer(self): queryset = [list(range(10)) for i in range(8)] serializer = lambda rows: [list(map(lambda x: 2 * x, row)) for row in rows] gen = streaming.serialize_queryset_by_batch(queryset, serializer=serializer, batch_size=10) batch = next(gen) self.assertEqual(batch[0], list(range(0, 20, 2))) self.assertRaises(StopIteration, lambda: next(gen))
def test_serialize_queryset_by_batch_with_serializer(self): queryset = [list(range(10)) for i in range(8)] serializer = lambda rows: [list(map(lambda x: 2 * x, row)) for row in rows] gen = streaming.serialize_queryset_by_batch(queryset, serializer=serializer, batch_size=10) batch = next(gen) self.assertEqual(batch[0], list(range(0, 20, 2))) self.assertRaises(StopIteration, lambda: next(gen))
def _test_serialize_queryset_by_batch(self, queryset): gen = streaming.serialize_queryset_by_batch(queryset, serializer=lambda x: x, batch_size=10) batch = next(gen) self.assertEqual(len(batch), 10) self.assertTrue(lists_equal(batch[0], list(range(10)))) self.assertTrue(lists_equal(batch[1], list(range(10, 20)))) batch = next(gen) self.assertEqual(len(batch), 10) self.assertTrue(lists_equal(batch[0], list(range(100, 110)))) batch = next(gen) self.assertEqual(len(batch), 7) self.assertRaises(StopIteration, lambda: next(gen))
def test_serialize_queryset_by_batch(self): queryset = [list(range(10 * i, 10 * (i + 1))) for i in range(27)] gen = streaming.serialize_queryset_by_batch(queryset, serializer=lambda x: x, batch_size=10) batch = next(gen) self.assertEqual(len(batch), 10) self.assertTrue(lists_equal(batch[0], list(range(10)))) self.assertTrue(lists_equal(batch[1], list(range(10, 20)))) batch = next(gen) self.assertEqual(len(batch), 10) self.assertTrue(lists_equal(batch[0], list(range(100, 110)))) batch = next(gen) self.assertEqual(len(batch), 7) self.assertRaises(StopIteration, lambda: next(gen))