class_docstr: FlatMap node test.
code: def test_multi_output_cover(self):
      node_info = {
          "inputs": ("num",),
          "outputs": ("num", "res"),
          "op_info": {
              "type": "hub",
              "operator": "local/multi_flat_map",
              "tag": "main",
              "init_args": None,
              "init_kws": {"factor": 10},
          },
          "iter_info": {"type": "flat_map", "param": None},
          "config": {"name": "test"},
          "next_nodes": ["_output"],
      }
      in_que = DataQueue(
          [("url", ColumnType.SCALAR), ("num", ColumnType.QUEUE)]
      )
      in_que.put(("test_url", [0, 1, 2]))
      in_que.seal()
      out_que1 = DataQueue(
          [
              ("url", ColumnType.SCALAR),
              ("num", ColumnType.QUEUE),
              ("res", ColumnType.QUEUE),
          ]
      )
      out_que2 = DataQueue(
          [("num", ColumnType.QUEUE), ("res", ColumnType.QUEUE)]
      )
      node_repr = NodeRepr(uid="test_node", **node_info)
      node = create_node(
          node_repr, self.op_pool, [in_que], [out_que1, out_que2]
      )
      self.assertTrue(node.initialize())
      f = self.thread_pool.submit(node.process)
      f.result()
      self.assertEqual(node.status, NodeStatus.FINISHED)
      self.assertTrue(out_que1.sealed)
      self.assertTrue(out_que2.sealed)
      for i in range(3):
          self.assertEqual(
              out_que1.get_dict(),
              {
                  "url": "test_url",
                  "num": i + 10,
                  "res": i + 10,
              },
          )
          self.assertEqual(
              out_que2.get_dict(),
              {
                  "num": i + 10,
                  "res": i + 10,
              },
          )
  
imports: import unittest
  import time
  import copy
  import uuid
  from concurrent.futures import ThreadPoolExecutor
  from towhee.runtime.node_repr import NodeRepr
  from towhee.runtime.nodes import create_node, NodeStatus
  from towhee.runtime.data_queue import DataQueue, ColumnType, Empty
  from towhee.runtime.operator_manager import OperatorPool
label_desc: Use image node_id 8 for calling the TestFlatMapNode obj's underlying member method code with example usage: obj.test_multi_output_cover() without return types