code: def test_execute_plan_for_seq_scan_plan(self, mock_build):
      batch_list = [
          Batch(pd.DataFrame([1])),
          Batch(pd.DataFrame([2])),
          Batch(pd.DataFrame([3])),
      ]
  
      # SequentialScanExecutor
      tree = MagicMock(node=SeqScanPlan(None, []))
      tree.exec.return_value = batch_list
      mock_build.return_value = tree
  
      actual = list(PlanExecutor(MagicMock(), None).execute_plan())
      mock_build.assert_called_once_with(None)
  
      tree.exec.assert_called_once()
      self.assertEqual(actual, batch_list)
  
imports: import unittest
  from unittest.mock import MagicMock, patch
  import pandas
  from evadb.catalog.catalog_type import TableType
  from evadb.catalog.models.table_catalog import TableCatalogEntry
  from evadb.executor.create_executor import CreateExecutor
  from evadb.executor.create_function_executor import CreateFunctionExecutor
  from evadb.executor.drop_object_executor import DropObjectExecutor, DropObjectPlan
  from evadb.executor.insert_executor import InsertExecutor
  from evadb.executor.load_executor import LoadDataExecutor
  from evadb.executor.plan_executor import PlanExecutor
  from evadb.executor.pp_executor import PPExecutor
  from evadb.executor.seq_scan_executor import SequentialScanExecutor
  from evadb.models.storage.batch import Batch
  from evadb.plan_nodes.create_function_plan import CreateFunctionPlan
  from evadb.plan_nodes.create_plan import CreatePlan
  from evadb.plan_nodes.insert_plan import InsertPlan
  from evadb.plan_nodes.load_data_plan import LoadDataPlan
  from evadb.plan_nodes.pp_plan import PPScanPlan
  from evadb.plan_nodes.rename_plan import RenamePlan
  from evadb.plan_nodes.seq_scan_plan import SeqScanPlan
  from evadb.plan_nodes.storage_plan import StoragePlan
label_desc: Use image node_id 3 for calling the PlanExecutorTest obj's underlying member method code with example usage: obj.test_execute_plan_for_seq_scan_plan(mock_build) without return types