code: def test_rows(self):
      s1 = SampleBatch(
          {
              "a": np.array([[1, 1], [2, 2], [3, 3]]),
              "b": {"c": np.array([[4, 4], [5, 5], [6, 6]])},
              SampleBatch.SEQ_LENS: np.array([1, 2]),
          }
      )
      check(
          next(s1.rows()),
          {"a": [1, 1], "b": {"c": [4, 4]}, SampleBatch.SEQ_LENS: 1},
      )
  
imports: import copy
  import functools
  import os
  import unittest
  import numpy
  import torch
  import tree
  import ray
  from ray.rllib.models.repeated_values import RepeatedValues
  from ray.rllib.policy.sample_batch import SampleBatch, attempt_count_timesteps, concat_samples
  from ray.rllib.utils.compression import is_compressed
  from ray.rllib.utils.framework import try_import_torch
  from ray.rllib.utils.test_utils import check
  from ray.rllib.utils.torch_utils import convert_to_torch_tensor
label_desc: Use image node_id 8 for calling the TestSampleBatch obj's underlying member method code with example usage: obj.test_rows() without return types