def test_iter_chunks(self):
self.assertEqual(list(iter_chunks([], 100)), [])
self.assertEqual(list(iter_chunks(list(range(5)), 1)), [[0], [1], [2], [3], [4]])
self.assertEqual(list(iter_chunks(list(range(5)), 2)), [[0, 1], [2, 3], [4]])
self.assertEqual(list(iter_chunks(list(range(5)), 5)), [[0, 1, 2, 3, 4]])
self.assertEqual(list(iter_chunks(list(range(6)), 2)), [[0, 1], [2, 3], [4, 5]])
self.assertEqual(list(iter_chunks(range(5), 2)), [[0, 1], [2, 3], [4]])
self.assertEqual(list(iter_chunks(range(6), 2)), [[0, 1], [2, 3], [4, 5]])
self.assertEqual(list(iter_chunks(range(1, 6), 2)), [[1, 2], [3, 4], [5]])
self.assertEqual(list(iter_chunks(range(1, 7), 2)), [[1, 2], [3, 4], [5, 6]])
def gen(num):
for i in range(num):
yield i+1
self.assertEqual(list(iter_chunks(gen(5), 2)), [[1, 2], [3, 4], [5]])
self.assertEqual(list(iter_chunks("01234", 2)), ["01", "23", "4"])
self.assertEqual(list(iter_chunks("012345", 2)), ["01", "23", "45"])
file_obj = open(os.path.dirname(os.path.abspath(__file__)) + "/chunks_file", "r")
self.assertEqual(list(iter_chunks(file_obj, 11)), (10 * ["1234567890\n"]) + ["\n"])
string_io = StringIO((10 * "1234567890\n") + "\n")
self.assertEqual(list(iter_chunks(string_io, 11)), (10 * ["1234567890\n"]) + ["\n"])
评论列表
文章目录