code: def test_csv_read_no_header(shutdown_only, tmp_path):
      from pyarrow import csv
  
      file_path = os.path.join(tmp_path, "test.csv")
      df = pd.DataFrame({"one": [1, 2, 3], "two": ["a", "b", "c"]})
      df.to_csv(file_path, index=False, header=False)
      ds = ray.data.read_csv(
          file_path,
          read_options=csv.ReadOptions(column_names=["one", "two"]),
      )
      out_df = ds.to_pandas()
      assert df.equals(out_df)
  
imports: import itertools
  import os
  import shutil
  from functools import partial
  import pandas
  import pyarrow
  import pyarrow.parquet
  import pytest
  from packaging.version import Version
  from pytest_lazyfixture import lazy_fixture
  import ray
  from ray.data.block import BlockAccessor
  from ray.data.datasource import BaseFileMetadataProvider, FastFileMetadataProvider, PartitionStyle, PathPartitionFilter
  from ray.data.datasource.file_based_datasource import FILE_SIZE_FETCH_PARALLELIZATION_THRESHOLD
  from ray.data.datasource.path_util import _unwrap_protocol
  from ray.data.tests.conftest import *
  from ray.data.tests.mock_http_server import *
  from ray.data.tests.test_partitioning import PathPartitionEncoder
  from ray.data.tests.util import Counter
  from ray.tests.conftest import *
label_desc: Use image node_id 16 for calling a global function with example usage: test_csv_read_no_header(shutdown_only, tmp_path) without return types