code: def test_scale_invariance_1d(self, xp, scp, kernel):
      # Verify that the functions in _SCALE_INVARIANT are insensitive to the
      # shape parameter (when smoothing == 0) in 1d.
      seq = Halton(1, scramble=False, seed=_np.random.RandomState())
      x = xp.asarray(3 * seq.random(50))
      y = _1d_test_function(x, xp)
      xitp = xp.asarray(3 * seq.random(50))
      yitp1 = self.build(scp, x, y, epsilon=1.0, kernel=kernel)(xitp)
      yitp2 = self.build(scp, x, y, epsilon=2.0, kernel=kernel)(xitp)
      return yitp1, yitp2
  
imports: import pickle
  import pytest
  import warnings
  import numpy
  from numpy.linalg import LinAlgError
  import cupy
  import cupyx
  from cupy import testing
  import cupyx.scipy.interpolate
  from cupyx.scipy.interpolate._rbfinterp import _AVAILABLE, _SCALE_INVARIANT, _NAME_TO_MIN_DEGREE, NAME_TO_FUNC, _monomial_powers, polynomial_matrix, kernel_matrix
label_desc: Use image node_id 1 for calling the _TestRBFInterpolator obj's underlying member method code with example usage: obj.test_scale_invariance_1d(xp, scp, kernel) and returns: yitp1,  yitp2