code: def test_split_is_not_disruptive(ray_start_cluster):
      ray.shutdown()
      ds = ray.data.range(100, parallelism=10).map_batches(lambda x: x)
  
      def verify_integrity(splits):
          for dss in splits:
              for batch in dss.iter_batches():
                  pass
          for batch in ds.iter_batches():
              pass
  
      # No block splitting invovled: split 10 even blocks into 2 groups.
      verify_integrity(ds.split(2, equal=True))
      # Block splitting invovled: split 10 even blocks into 3 groups.
      verify_integrity(ds.split(3, equal=True))
  
      # Same as above but having tranforms post converting to lazy.
      verify_integrity(ds.map_batches(lambda x: x).split(2, equal=True))
      verify_integrity(ds.map_batches(lambda x: x).split(3, equal=True))
  
      # Same as above but having in-place tranforms post converting to lazy.
      verify_integrity(ds.randomize_block_order().split(2, equal=True))
      verify_integrity(ds.randomize_block_order().split(3, equal=True))
  
imports: import itertools
  import math
  import random
  import time
  from unittest.mock import patch
  import numpy
  import pandas
  import pytest
  import ray
  from ray.data._internal.block_list import BlockList
  from ray.data._internal.equalize import _equalize
  from ray.data._internal.execution.interfaces import RefBundle
  from ray.data._internal.logical.interfaces import LogicalPlan
  from ray.data._internal.logical.operators.input_data_operator import InputData
  from ray.data._internal.plan import ExecutionPlan
  from ray.data._internal.split import _drop_empty_block_split, _generate_global_split_results, _generate_per_block_split_indices, _generate_valid_indices, _split_at_indices, _split_single_block
  from ray.data._internal.stats import DatasetStats
  from ray.data.block import BlockAccessor, BlockMetadata
  from ray.data.dataset import Dataset
  from ray.data.tests.conftest import *
  from ray.data.tests.util import extract_values
  from ray.tests.conftest import *
label_desc: Use image node_id 28 for calling a global function with example usage: test_split_is_not_disruptive(ray_start_cluster) without return types