code: def test_polynomial_features_input_validation(params, err_msg):
      """Test that we raise errors for invalid input in PolynomialFeatures."""
      X = [[1], [2]]
  
      with pytest.raises(ValueError, match=err_msg):
          PolynomialFeatures(**params).fit(X)
  
imports: import sys
  import numpy
  import pytest
  from numpy.testing import assert_allclose, assert_array_equal
  from scipy import sparse
  from scipy.interpolate import BSpline
  from scipy.sparse import random
  from sklearn.linear_model import LinearRegression
  from sklearn.pipeline import Pipeline
  from sklearn.preprocessing import KBinsDiscretizer, PolynomialFeatures, SplineTransformer
  from sklearn.preprocessing._csr_polynomial_expansion import _calc_expanded_nnz, _calc_total_nnz, _get_sizeof_LARGEST_INT_t
  from sklearn.utils._testing import assert_array_almost_equal
  from sklearn.utils.fixes import CSC_CONTAINERS, CSR_CONTAINERS, parse_version, sp_version
label_desc: Use image node_id 18 for calling a global function with example usage: test_polynomial_features_input_validation(params, err_msg) without return types