code: def test_fillna_inplace(self):
      df = DataFrame(np.random.default_rng(2).standard_normal((10, 4)))
      df.loc[:4, 1] = np.nan
      df.loc[-4:, 3] = np.nan
  
      expected = df.fillna(value=0)
      assert expected is not df
  
      df.fillna(value=0, inplace=True)
      tm.assert_frame_equal(df, expected)
  
      expected = df.fillna(value={0: 0}, inplace=True)
      assert expected is None
  
      df.loc[:4, 1] = np.nan
      df.loc[-4:, 3] = np.nan
      msg = "DataFrame.fillna with 'method' is deprecated"
      with tm.assert_produces_warning(FutureWarning, match=msg):
          expected = df.fillna(method="ffill")
      assert expected is not df
  
      with tm.assert_produces_warning(FutureWarning, match=msg):
          df.fillna(method="ffill", inplace=True)
      tm.assert_frame_equal(df, expected)
  
imports: import numpy
  import pytest
  from pandas._config import using_pyarrow_string_dtype
  from pandas import Categorical, DataFrame, DatetimeIndex, NaT, PeriodIndex, Series, TimedeltaIndex, Timestamp, date_range, to_datetime
  import pandas._testing
  from pandas.tests.frame.common import _check_mixed_float
label_desc: Use image node_id 28 for calling the TestFillNA obj's underlying member method code with example usage: obj.test_fillna_inplace() without return types