code: def test_series_pct_change(data, periods, fill_method):
      cs = cudf.Series(data)
      ps = cs.to_pandas()
  
      if np.abs(periods) <= len(cs):
          got = cs.pct_change(periods=periods, fill_method=fill_method)
          expected = ps.pct_change(
              periods=periods, fill_method=fill_method
          )
          np.testing.assert_array_almost_equal(
              got.to_numpy(na_value=np.nan), expected
          )
  
imports: from concurrent.futures import ThreadPoolExecutor
  import cupy
  import numpy
  import pandas
  import pytest
  import cudf
  from cudf.datasets import randomdata
  from cudf.testing._utils import _create_cudf_series_float64_default, _create_pandas_series_float64_default, assert_eq, assert_exceptions_equal, expect_warning_if
label_desc: Use image node_id 16 for calling a global function with example usage: test_series_pct_change(data, periods, fill_method) without return types