public GoConfigHolder loadConfigHolder(final String content, Callback callback) throws Exception {
        CruiseConfig configForEdit;
        CruiseConfig config;
        LOGGER.debug("[Config Save] Loading config holder");
        configForEdit = deserializeConfig(content);
        if (callback != null) callback.call(configForEdit);
        config = preprocessAndValidate(configForEdit);

        return new GoConfigHolder(config, configForEdit);
    }
@Test
    void shouldLoadConfigWith2ConfigRepos() throws Exception {
        CruiseConfig cruiseConfig = xmlLoader.loadConfigHolder(configWithConfigRepos(
                """
                          <config-repos>
                            <config-repo pluginId="myplugin" id="repo-id1">
                              <git url="https://github.com/tomzo/gocd-indep-config-part.git" />
                            </config-repo >
                            <config-repo pluginId="myplugin" id="repo-id2">
                              <git url="https://github.com/tomzo/gocd-refmain-config-part.git" />
                            </config-repo >
                          </config-repos>
                        """
        )).config;
        assertThat(cruiseConfig.getConfigRepos().size()).isEqualTo(2);
        ConfigRepoConfig configRepo1 = cruiseConfig.getConfigRepos().get(0);
        assertThat(configRepo1.getRepo()).isEqualTo(git("https://github.com/tomzo/gocd-indep-config-part.git"));
        ConfigRepoConfig configRepo2 = cruiseConfig.getConfigRepos().get(1);
        assertThat(configRepo2.getRepo()).isEqualTo(git("https://github.com/tomzo/gocd-refmain-config-part.git"));
    }