code: def test_multi_transformed_data_for_mock(
      mock_name, expected_lens, all_expected_cols, connection
  ):
      vf.runtime.set_connection(connection)
      mock_path = altair_mocks_dir / mock_name / "mock.py"
      mock_src = mock_path.read_text("utf8")
      chart = eval_block(mock_src)
      dfs = vf.transformed_data(chart)
  
      for df, expected_len, expected_cols in zip(
          dfs, expected_lens, all_expected_cols
      ):
          # Check that a DataFrame was returned
          assert isinstance(df, pd.DataFrame)
  
          # Check that the expected columns are present
          assert set(expected_cols).issubset(set(df.columns))
  
          # Check that datetime columns have local timezone
          for dtype in df.dtypes.values:
              if dtype.kind == "M":
                  assert str(dtype.tz) == vf.get_local_tz()
  
          # Check expected length
          assert len(df) == expected_len
  
file_path: vegafusion/python/vegafusion/tests/test_transformed_data.py
imports: from pathlib import Path
  import pandas
  import pyarrow
  import pytest
  from altair.utils.execeval import eval_block
  import vegafusion
  from vega_datasets import data
  import polars
  import altair
label_desc: Use image node_id 3 for calling a global function with example usage: test_multi_transformed_data_for_mock(mock_name, expected_lens, all_expected_cols, connection) without return types