code: def test_hyperparams_repository_has_default_client_project(
      tmpdir, cx_repo_ctor: Callable[[TmpDir], AutoMLContext]
  ):
      cx = cx_repo_ctor(tmpdir)
      loc: ScopedLocation = ScopedLocation.default().with_dc(
          SOME_ROUND_DATACLASS
      )
  
      restored_client = cx.repo.load(loc.popped(), deep=True)
      restored_project = cx.repo.load(loc.popped().popped(), deep=True)
  
      cx.repo.save(
          copy.deepcopy(SOME_ROUND_DATACLASS), scope=loc, deep=True
      )
      restored_round = cx.repo.load(loc, deep=True)
  
      assert restored_round == SOME_ROUND_DATACLASS
      assert (
          restored_project.shallow() == SOME_PROJECT_DATACLASS.shallow()
      )
      assert restored_client.get_id() == SOME_CLIENT_DATACLASS.get_id()
  
imports: import copy
  from typing import Callable, List
  import pytest
  from neuraxle.base import CX
  from neuraxle.metaopt.context import AutoMLContext
  from neuraxle.metaopt.data.aggregates import Client, Project, Root
  from neuraxle.metaopt.data.vanilla import DEFAULT_CLIENT, DEFAULT_PROJECT, BaseDataclass, ClientDataclass, ProjectDataclass, RootDataclass, RoundDataclass, ScopedLocation
  from neuraxle.metaopt.repositories.db import SQLLiteHyperparamsRepository
  from neuraxle.metaopt.repositories.json import HyperparamsOnDiskRepository
  from neuraxle.metaopt.repositories.repo import HyperparamsRepository
  from testing_neuraxle.metaopt.test_automl_dataclasses import ALL_DATACLASSES, SOME_CLIENT_DATACLASS, SOME_FULL_SCOPED_LOCATION, SOME_PROJECT_DATACLASS, SOME_ROOT_DATACLASS, SOME_ROUND_DATACLASS
label_desc: Use image node_id 7 for calling a global function with example usage: test_hyperparams_repository_has_default_client_project(tmpdir, cx_repo_ctor) without return types