use of com.thoughtworks.go.config.materials.svn.SvnMaterialConfig in project gocd by gocd.
the class ConfigConverterTest method shouldConvertSvmMaterialConfigWhenPlainPassword.
@Test
void shouldConvertSvmMaterialConfigWhenPlainPassword() {
SvnMaterialConfig svnMaterialConfig = svn("url", true);
svnMaterialConfig.setName(new CaseInsensitiveString("name"));
svnMaterialConfig.setPassword("pass");
svnMaterialConfig.setFolder("folder");
svnMaterialConfig.setFilter(Filter.create("filter"));
svnMaterialConfig.setUserName("username");
CRSvnMaterial crSvnMaterial = (CRSvnMaterial) configConverter.materialToCRMaterial(svnMaterialConfig);
assertThat(crSvnMaterial.getName()).isEqualTo("name");
assertThat(crSvnMaterial.getDestination()).isEqualTo("folder");
assertThat(crSvnMaterial.isAutoUpdate()).isTrue();
assertThat(crSvnMaterial.getFilterList()).contains("filter");
assertThat(crSvnMaterial.getUrl()).isEqualTo("url");
assertThat(crSvnMaterial.getUsername()).isEqualTo("username");
assertThat(crSvnMaterial.getPassword()).isNull();
assertThat(crSvnMaterial.isCheckExternals()).isTrue();
}
use of com.thoughtworks.go.config.materials.svn.SvnMaterialConfig in project gocd by gocd.
the class GoConfigServiceTest method shouldBeAbleToListAllSCMMaterialConfigs.
@Test
public void shouldBeAbleToListAllSCMMaterialConfigs() {
BasicCruiseConfig config = mock(BasicCruiseConfig.class);
DependencyMaterialConfig dependencyMaterialConfig = MaterialConfigsMother.dependencyMaterialConfig();
SvnMaterialConfig svnMaterialConfig = MaterialConfigsMother.svnMaterialConfig();
PluggableSCMMaterialConfig pluggableSCMMaterialConfig = MaterialConfigsMother.pluggableSCMMaterialConfig();
HashSet<MaterialConfig> materialConfigs = new HashSet<>(Arrays.asList(dependencyMaterialConfig, svnMaterialConfig, pluggableSCMMaterialConfig));
when(goConfigService.getCurrentConfig()).thenReturn(config);
when(config.getAllUniqueMaterialsBelongingToAutoPipelinesAndConfigRepos()).thenReturn(materialConfigs);
Set<MaterialConfig> schedulableDependencyMaterials = goConfigService.getSchedulableSCMMaterials();
assertThat(schedulableDependencyMaterials.size(), is(2));
assertTrue(schedulableDependencyMaterials.contains(svnMaterialConfig));
assertTrue(schedulableDependencyMaterials.contains(pluggableSCMMaterialConfig));
}
use of com.thoughtworks.go.config.materials.svn.SvnMaterialConfig in project gocd by gocd.
the class GoConfigServiceTest method shouldFindMaterialConfigBasedOnFingerprint.
@Test
public void shouldFindMaterialConfigBasedOnFingerprint() throws Exception {
SvnMaterialConfig expected = svn("repo", null, null, false);
cruiseConfig = configWith(GoConfigMother.createPipelineConfigWithMaterialConfig(expected));
when(goConfigDao.load()).thenReturn(cruiseConfig);
MaterialConfig actual = goConfigService.materialForPipelineWithFingerprint("pipeline", expected.getFingerprint());
assertThat(actual, is(expected));
}
use of com.thoughtworks.go.config.materials.svn.SvnMaterialConfig in project gocd by gocd.
the class MaterialRepresenter method toJSON.
public static void toJSON(OutputWriter jsonWriter, MaterialConfig materialConfig) {
if (!materialConfig.errors().isEmpty()) {
jsonWriter.addChild("errors", errorWriter -> {
HashMap<String, String> errorMapping = new HashMap<>();
errorMapping.put("materialName", "name");
errorMapping.put("folder", "destination");
errorMapping.put("autoUpdate", "auto_update");
errorMapping.put("filterAsString", "filter");
errorMapping.put("checkexternals", "check_externals");
errorMapping.put("serverAndPort", "port");
errorMapping.put("useTickets", "use_tickets");
errorMapping.put("pipelineName", "pipeline");
errorMapping.put("stageName", "stage");
errorMapping.put("pipelineStageName", "pipeline");
errorMapping.put("packageId", "ref");
errorMapping.put("scmId", "ref");
errorMapping.put("encryptedPassword", "encrypted_password");
new ErrorGetter(errorMapping).toJSON(errorWriter, materialConfig);
});
}
jsonWriter.add("type", classToTypeMap.get(materialConfig.getClass()));
switch(classToTypeMap.get(materialConfig.getClass())) {
case "git":
jsonWriter.addChild("attributes", attributeWriter -> GitMaterialRepresenter.toJSON(attributeWriter, (GitMaterialConfig) materialConfig));
break;
case "hg":
jsonWriter.addChild("attributes", attributeWriter -> HgMaterialRepresenter.toJSON(attributeWriter, (HgMaterialConfig) materialConfig));
break;
case "svn":
jsonWriter.addChild("attributes", attributeWriter -> SvnMaterialRepresenter.toJSON(attributeWriter, (SvnMaterialConfig) materialConfig));
break;
case "p4":
jsonWriter.addChild("attributes", attributeWriter -> PerforceMaterialRepresenter.toJSON(attributeWriter, (P4MaterialConfig) materialConfig));
break;
case "tfs":
jsonWriter.addChild("attributes", attributeWriter -> TfsMaterialRepresenter.toJSON(attributeWriter, (TfsMaterialConfig) materialConfig));
break;
case "dependency":
jsonWriter.addChild("attributes", attributeWriter -> DependencyMaterialRepresenter.toJSON(attributeWriter, (DependencyMaterialConfig) materialConfig));
break;
case "package":
jsonWriter.addChild("attributes", attributeWriter -> PackageMaterialRepresenter.toJSON(attributeWriter, (PackageMaterialConfig) materialConfig));
break;
case "plugin":
jsonWriter.addChild("attributes", attributeWriter -> PluggableScmMaterialRepresenter.toJSON(attributeWriter, (PluggableSCMMaterialConfig) materialConfig));
break;
}
}
use of com.thoughtworks.go.config.materials.svn.SvnMaterialConfig in project gocd by gocd.
the class ServerHealthServiceTest method shouldRemoveErrorLogWhenCorrespondingMaterialIsMissing.
@Test
public void shouldRemoveErrorLogWhenCorrespondingMaterialIsMissing() throws Exception {
serverHealthService.update(ServerHealthState.error("hg-message", "description", HealthStateType.general(forMaterial(MaterialsMother.hgMaterial()))));
SvnMaterialConfig svnMaterialConfig = MaterialConfigsMother.svnMaterialConfig();
serverHealthService.update(ServerHealthState.error("svn-message", "description", HealthStateType.general(forMaterialConfig(svnMaterialConfig))));
CruiseConfig cruiseConfig = new BasicCruiseConfig();
cruiseConfig.addPipeline("defaultGroup", new PipelineConfig(new CaseInsensitiveString("dev"), new MaterialConfigs(svnMaterialConfig), new StageConfig(new CaseInsensitiveString("first"), new JobConfigs())));
serverHealthService.purgeStaleHealthMessages(cruiseConfig);
assertThat(serverHealthService.logs().size(), is(1));
}
Aggregations