code: def test_search_runs_api(self):
      client = self.client
  
      query = self.isolated_query_patch('run["name"] == "Run # 3"')
      response = client.get(
          "/api/runs/search/run/",
          params={"q": query, "report_progress": False},
      )
      self.assertEqual(200, response.status_code)
  
      decoded_response = decode_tree(
          decode_encoded_tree_stream(
              response.iter_bytes(chunk_size=512 * 1024)
          )
      )
      self.assertEqual(1, len(decoded_response))
      for _, run in decoded_response.items():
          self.assertEqual(4, len(run["traces"]["metric"]))
          for trace in run["traces"]["metric"]:
              self.assertAlmostEqual(0.99, trace["last_value"]["last"])
  
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 1 for calling the TestRunApi obj's underlying member method code with example usage: obj.test_search_runs_api() without return types