code: def freq_shift_cpu(x, freq, fs):
      """
      Frequency shift signal by freq at fs sample rate
      Parameters
      ----------
      x : array_like, complex valued
          The data to be shifted.
      freq : float
          Shift by this many (Hz)
      fs : float
          Sampling rate of the signal
      domain : string
          freq or time
      """
      x = np.asarray(x)
      return x * np.exp(-1j * 2 * np.pi * freq / fs * np.arange(x.size))
  
file_path: cusignal/python/cusignal/test/test_filtering.py
imports: import cupy
  import numpy
  import pytest
  import scipy
  from scipy import signal
  import cusignal
  from cusignal.testing.utils import _check_rapids_pytest_benchmark, array_equal
label_desc: Use image node_id 1 for calling a global function with example usage: freq_shift_cpu(x, freq, fs) and returns: unknown