code: def test_search_runs_api_paginated(self):
      client = self.client
  
      query = self.isolated_query_patch(
          'run["name"] in ["Run # 2","Run # 3"]'
      )
      response = client.get(
          "/api/runs/search/run/",
          params={"q": query, "limit": 1, "report_progress": False},
      )
      self.assertEqual(200, response.status_code)
  
      decoded_response = decode_tree(
          decode_encoded_tree_stream(
              response.iter_bytes(chunk_size=1024 * 1024)
          )
      )
      self.assertEqual(1, len(decoded_response))
  
      offset = ""
      for run_hash, run in decoded_response.items():
          offset = run_hash
          self.assertEqual("Run # 3", run["props"]["name"])
  
      query = self.isolated_query_patch(
          'run["name"] in ["Run # 2","Run # 3"]'
      )
      response = client.get(
          "/api/runs/search/run/",
          params={
              "q": query,
              "limit": 5,
              "offset": offset,
              "report_progress": False,
          },
      )
      self.assertEqual(200, response.status_code)
  
      decoded_response = decode_tree(
          decode_encoded_tree_stream(
              response.iter_bytes(chunk_size=1024 * 1024)
          )
      )
      self.assertEqual(1, len(decoded_response))
      for run_hash, run in decoded_response.items():
          self.assertEqual("Run # 2", run["props"]["name"])
  
imports: import pytest
  import numpy
  from parameterized import parameterized
  from tests.base import PrefilledDataApiTestBase, ApiTestBase
  from tests.utils import decode_encoded_tree_stream
  from aim.storage.treeutils import decode_tree
  from aim.sdk.run import Run
label_desc: Use image node_id 2 for calling the TestRunApi obj's underlying member method code with example usage: obj.test_search_runs_api_paginated() without return types