code: def test_graph_net_and_tvl1_same_for_pure_l1_logistic_spacenet_classifier(
      standardize, max_iter=20, decimal=2
  ):
      """Check graph_net_solver and tvl1_solver should give same results \
      when l1_ratio = 1."""
      iris = load_iris()
      X, y = iris.data, iris.target
      y = y > 0.0
      alpha = 1.0 / X.shape[0]
      X_, mask_ = to_niimgs(X, (2, 2, 2))
  
      sl = SpaceNetClassifier(
          alphas=alpha,
          l1_ratios=1.0,
          max_iter=max_iter,
          mask=mask_,
          penalty="graph-net",
          standardize=standardize,
          verbose=0,
      ).fit(X_, y)
      tvl1 = SpaceNetClassifier(
          alphas=alpha,
          l1_ratios=1.0,
          max_iter=max_iter,
          mask=mask_,
          penalty="tv-l1",
          standardize=standardize,
          verbose=0,
      ).fit(X_, y)
  
      assert_array_almost_equal(
          sl.coef_[0], tvl1.coef_[0], decimal=decimal
      )
  
imports: import numpy
  import pytest
  from nibabel import Nifti1Image
  from numpy.testing import assert_almost_equal, assert_array_almost_equal, assert_array_equal
  from sklearn.datasets import load_iris
  from nilearn.decoding._objective_functions import logistic_loss_lipschitz_constant, spectral_norm_squared, squared_loss, squared_loss_grad
  from nilearn.decoding.space_net import BaseSpaceNet, SpaceNetClassifier, SpaceNetRegressor
  from nilearn.decoding.space_net_solvers import _logistic_derivative_lipschitz_constant, _squared_loss_and_spatial_grad, _squared_loss_and_spatial_grad_derivative, _squared_loss_derivative_lipschitz_constant, graph_net_logistic, graph_net_squared_loss, tvl1_solver
  from nilearn.image import get_data
  from nilearn.masking import unmask_from_to_3d_array
label_desc: Use image node_id 9 for calling a global function with example usage: test_graph_net_and_tvl1_same_for_pure_l1_logistic_spacenet_classifier(standardize, max_iter, decimal) without return types