code: def test_load_config_with_schema(
      self, hydra_restore_singletons: Any, path: str
  ) -> None:
      ConfigStore.instance().store(
          name="config_with_schema",
          node=TopLevelConfig,
          provider="this_test",
      )
      ConfigStore.instance().store(
          group="db",
          name="base_mysql",
          node=MySQLConfig,
          provider="this_test",
      )
  
      config_loader = ConfigLoaderImpl(
          config_search_path=create_config_search_path(path)
      )
  
      cfg = config_loader.load_configuration(
          config_name="config",
          overrides=["+db=validated_mysql"],
          run_mode=RunMode.RUN,
      )
  
      with open_dict(cfg):
          del cfg["hydra"]
      assert cfg == {
          "normal_yaml_config": True,
          "db": {
              "driver": "mysql",
              "host": "???",
              "port": "???",
              "user": "omry",
              "password": "secret",
          },
      }
  
      # verify illegal modification is rejected at runtime
      with raises(ValidationError):
          cfg.db.port = "fail"
  
      # verify illegal override is rejected during load
      with raises(HydraException):
          config_loader.load_configuration(
              config_name="db/mysql",
              overrides=["db.port=fail"],
              run_mode=RunMode.RUN,
          )
  
imports: import re
  from dataclasses import dataclass, field
  from textwrap import dedent
  from typing import Any, List
  from omegaconf import MISSING, OmegaConf, ValidationError, open_dict
  from pytest import mark, param, raises, warns
  from hydra import version
  from hydra._internal.config_loader_impl import ConfigLoaderImpl
  from hydra._internal.utils import create_config_search_path
  from hydra.core.config_store import ConfigStore, ConfigStoreWithProvider
  from hydra.core.override_parser.overrides_parser import OverridesParser
  from hydra.core.utils import env_override, setup_globals
  from hydra.errors import ConfigCompositionException, HydraException, MissingConfigException
  from hydra.test_utils.test_utils import chdir_hydra_root
  from hydra.types import RunMode
  from tests.instantiate import UserGroup
label_desc: Use image node_id 12 for calling the TestConfigLoader obj's underlying member method code with example usage: obj.test_load_config_with_schema(hydra_restore_singletons, path) without return types