code: def test_large_variable_width_types(self):
      with self.sql_conf(
          {"spark.sql.execution.arrow.useLargeVarTypes": True}
      ):
          data = [("foo", b"foo"), (None, None), ("bar", b"bar")]
          df = self.spark.createDataFrame(data, "a string, b binary")
  
          def func(iterator):
              for batch in iterator:
                  assert isinstance(batch, pa.RecordBatch)
                  assert batch.schema.types == [
                      pa.large_string(),
                      pa.large_binary(),
                  ]
                  yield batch
  
          actual = df.mapInArrow(func, df.schema).collect()
          expected = df.collect()
          self.assertEqual(actual, expected)
  
imports: import os
  import time
  import unittest
  from pyspark.sql.utils import PythonException
  from pyspark.testing.sqlutils import ReusedSQLTestCase, have_pandas, have_pyarrow, pandas_requirement_message, pyarrow_requirement_message
  from pyspark.testing.utils import QuietTest
label_desc: Use image node_id 3 for calling the MapInArrowTestsMixin obj's underlying member method code with example usage: obj.test_large_variable_width_types() without return types