code: def test_pandas_parquet_2_0_roundtrip_read_pandas_no_index_written(
      tempdir,
  ):
      df = alltypes_sample(size=10000)
  
      filename = tempdir / "pandas_roundtrip.parquet"
      arrow_table = pa.Table.from_pandas(df, preserve_index=False)
      js = arrow_table.schema.pandas_metadata
      assert not js["index_columns"]
      # ARROW-2170
      # While index_columns should be empty, columns needs to be filled still.
      assert js["columns"]
  
      _write_table(arrow_table, filename)
      table_read = pq.read_pandas(filename)
  
      js = table_read.schema.pandas_metadata
      assert not js["index_columns"]
  
      read_metadata = table_read.schema.metadata
      assert arrow_table.schema.metadata == read_metadata
  
      df_read = table_read.to_pandas()
      tm.assert_frame_equal(df, df_read)
  
imports: import io
  import json
  import numpy
  import pytest
  import pyarrow
  from pyarrow.fs import LocalFileSystem, SubTreeFileSystem
  from pyarrow.util import guid
  from pyarrow.vendored.version import Version
label_desc: Use image node_id 4 for calling a global function with example usage: test_pandas_parquet_2_0_roundtrip_read_pandas_no_index_written(tempdir) without return types