class_docstr: TestDataLoader
code: def test_iterable(self):
      p = (
          pipe.input("num")
          .map("num", "ret", lambda x: x + 1)
          .output("ret")
      )
      expect = [2, 3, 4]
      for i, data in enumerate(
          DataLoader(
              [{"num": 1}, {"num": 2}, {"num": 3}],
              parser=lambda x: x["num"],
          )
      ):
          self.assertEqual(p(data).to_list()[0][0], expect[i])
  
      res = []
      for data in DataLoader(
          [{"num": 1}, {"num": 2}, {"num": 3}],
          parser=lambda x: x["num"],
          batch_size=2,
      ):
          for ret in p.batch(data):
              res.append(ret.to_list()[0][0])
      self.assertEqual(res, expect)
  
imports: import unittest
  from towhee import DataLoader, pipe, ops, register
  from towhee.operator.base import PyOperator
label_desc: Use image node_id 1 for calling the TestDataLoader obj's underlying member method code with example usage: obj.test_iterable() without return types