code: def test_interp_fill_functions(using_copy_on_write, func):
      # Check that these takes the same code paths as interpolate
      df = DataFrame({"a": [1, 2]})
      df_orig = df.copy()
  
      result = getattr(df, func)()
  
      if using_copy_on_write:
          assert np.shares_memory(
              get_array(result, "a"), get_array(df, "a")
          )
      else:
          assert not np.shares_memory(
              get_array(result, "a"), get_array(df, "a")
          )
  
      result.iloc[0, 0] = 100
  
      if using_copy_on_write:
          assert not np.shares_memory(
              get_array(result, "a"), get_array(df, "a")
          )
      tm.assert_frame_equal(df, df_orig)
  
imports: import numpy
  import pytest
  from pandas import NA, ArrowDtype, DataFrame, Interval, NaT, Series, Timestamp, interval_range, option_context
  import pandas._testing
  from pandas.tests.copy_view.util import get_array
label_desc: Use image node_id 2 for calling a global function with example usage: test_interp_fill_functions(using_copy_on_write, func) without return types