code: def test_n_iter_no_change_inf():
      # test n_iter_no_change using binary data set
      # the fitting process should go to max_iter iterations
      X = X_digits_binary[:100]
      y = y_digits_binary[:100]
  
      # set a ridiculous tolerance
      # this should always trigger _update_no_improvement_count()
      tol = 1e9
  
      # fit
      n_iter_no_change = np.inf
      max_iter = 3000
      clf = MLPClassifier(
          tol=tol,
          max_iter=max_iter,
          solver="sgd",
          n_iter_no_change=n_iter_no_change,
      )
      clf.fit(X, y)
  
      # validate n_iter_no_change doesn't cause early stopping
      assert clf.n_iter_ == max_iter
  
      # validate _update_no_improvement_count() was always triggered
      assert clf._no_improvement_count == clf.n_iter_ - 1
  
imports: import re
  import sys
  import warnings
  from io import StringIO
  import joblib
  import numpy
  import pytest
  from numpy.testing import assert_allclose, assert_almost_equal, assert_array_equal
  from sklearn.datasets import load_digits, load_iris, make_multilabel_classification, make_regression
  from sklearn.exceptions import ConvergenceWarning
  from sklearn.metrics import roc_auc_score
  from sklearn.neural_network import MLPClassifier, MLPRegressor
  from sklearn.preprocessing import LabelBinarizer, MinMaxScaler, scale
  from sklearn.utils._testing import ignore_warnings
  from sklearn.utils.fixes import CSR_CONTAINERS
label_desc: Use image node_id 29 for calling a global function with example usage: test_n_iter_no_change_inf() without return types