code: def test_integer_with_nulls(version):
      # pandas requires upcast to float dtype
      path = random_path()
      TEST_FILES.append(path)
  
      int_dtypes = ["i1", "i2", "i4", "i8", "u1", "u2", "u4", "u8"]
      num_values = 100
  
      arrays = []
      null_mask = np.random.randint(0, 10, size=num_values) < 3
      expected_cols = []
      for name in int_dtypes:
          values = np.random.randint(0, 100, size=num_values)
          arrays.append(pa.array(values, mask=null_mask))
  
          expected = values.astype("f8")
          expected[null_mask] = np.nan
  
          expected_cols.append(expected)
  
      table = pa.table(arrays, names=int_dtypes)
      _check_arrow_roundtrip(table)
  
      df = table.to_pandas()
      _check_pandas_roundtrip(df, version=version)
  
imports: import io
  import os
  import sys
  import tempfile
  import pytest
  import hypothesis
  import hypothesis.strategies
  import numpy
  import pyarrow
  import pyarrow.tests.strategies
  from pyarrow.feather import read_feather, write_feather, read_table, FeatherDataset
label_desc: Use image node_id 18 for calling a global function with example usage: test_integer_with_nulls(version) without return types