code: def test_given_fitted_mechanisms_with_no_input_change_when_evaluate_unit_change_input_only_methods_then_returns_zero_attributions():
      num_rows = 100
      A = np.random.normal(size=num_rows)
      B = np.random.normal(size=num_rows)
      C = 3 * A + 2 * B
  
      background_df = pd.DataFrame(data=dict(A=A, B=B, C=C))
      foreground_df = pd.DataFrame(data=dict(A=A, B=B, C=C))
  
      actual_contributions = unit_change_nonlinear_input_only(
          SklearnRegressionModel(
              RFR(n_jobs=1).fit(np.column_stack((A, B)), C)
          ),
          background_df,
          foreground_df,
          ["A", "B"],
          shapley_config=ShapleyConfig(n_jobs=1),
      )
      expected_contributions = pd.DataFrame(
          data=dict(A=np.zeros(num_rows), B=np.zeros(num_rows))
      )
      np.testing.assert_array_almost_equal(
          actual_contributions, expected_contributions, decimal=1
      )
  
imports: import numpy
  import pandas
  import pytest
  from flaky import flaky
  from sklearn.ensemble import RandomForestRegressor
  from sklearn.exceptions import NotFittedError
  from sklearn.linear_model import LinearRegression
  from dowhy.gcm.ml.regression import SklearnRegressionModel
  from dowhy.gcm.shapley import ShapleyConfig
  from dowhy.gcm.unit_change import SklearnLinearRegressionModel, unit_change, unit_change_linear, unit_change_linear_input_only, unit_change_nonlinear, unit_change_nonlinear_input_only
label_desc: Use image node_id 5 for calling a global function with example usage: test_given_fitted_mechanisms_with_no_input_change_when_evaluate_unit_change_input_only_methods_then_returns_zero_attributions() without return types