code: def test_fit_shuffle_blocks():
      N = 10
      X = da.from_array(1 + np.arange(N).reshape(-1, 1), chunks=1)
      y = da.from_array(np.ones(N), chunks=1)
      classes = [0, 1]
  
      sgd = SGDClassifier(
          max_iter=5,
          random_state=0,
          fit_intercept=False,
          shuffle=False,
          tol=1e-3,
      )
  
      sgd1 = fit(clone(sgd), X, y, random_state=0, classes=classes)
      sgd2 = fit(clone(sgd), X, y, random_state=42, classes=classes)
      assert len(sgd1.coef_) == len(sgd2.coef_) == 1
      assert not np.allclose(sgd1.coef_, sgd2.coef_)
  
      X, y = make_classification(random_state=0, chunks=20)
      sgd_a = fit(
          clone(sgd),
          X,
          y,
          random_state=0,
          classes=classes,
          shuffle_blocks=False,
      )
      sgd_b = fit(
          clone(sgd),
          X,
          y,
          random_state=42,
          classes=classes,
          shuffle_blocks=False,
      )
      assert np.allclose(sgd_a.coef_, sgd_b.coef_)
  
      with pytest.raises(ValueError, match="cannot be used to seed"):
          fit(
              sgd,
              X,
              y,
              classes=np.array([-1, 0, 1]),
              shuffle_blocks=True,
              random_state=da.random.RandomState(42),
          )
  
imports: import dask
  import dask.array
  import dask.bag
  import dask.dataframe
  import numpy
  import pandas
  import pytest
  from dask.delayed import Delayed
  from sklearn.base import clone
  from sklearn.ensemble import RandomForestClassifier
  from sklearn.linear_model import SGDClassifier
  import dask_ml.feature_extraction.text
  from dask_ml._partial import fit, predict
  from dask_ml.datasets import make_classification
  from dask_ml.wrappers import Incremental
label_desc: Use image node_id 4 for calling a global function with example usage: test_fit_shuffle_blocks() without return types