use of com.mercedesbenz.sechub.commons.model.SecHubSourceDataConfiguration in project sechub by mercedes-benz.
the class SecHubFileStructureDataProviderBuilderTest method for_scanType_codescan_and_model_with_codescan_by_data_section_filesystem_builder_creates_a_configuration.
@Test
void for_scanType_codescan_and_model_with_codescan_by_data_section_filesystem_builder_creates_a_configuration() {
/* prepare */
SecHubConfigurationModel model = new SecHubConfigurationModel();
SecHubCodeScanConfiguration codeScan = new SecHubCodeScanConfiguration();
codeScan.getNamesOfUsedDataConfigurationObjects().add("test-ref-1");
SecHubFileSystemConfiguration fileSystemConfiguration = new SecHubFileSystemConfiguration();
fileSystemConfiguration.getFolders().add("myfolder1");
SecHubSourceDataConfiguration sourceConfig1 = new SecHubSourceDataConfiguration();
sourceConfig1.setFileSystem(fileSystemConfiguration);
sourceConfig1.setUniqueName("test-ref-1");
SecHubDataConfiguration data = new SecHubDataConfiguration();
data.getSources().add(sourceConfig1);
model.setData(data);
codeScan.setFileSystem(fileSystemConfiguration);
model.setCodeScan(codeScan);
/* execute */
SecHubFileStructureDataProvider configuration = builderToTest.setModel(model).setScanType(ScanType.CODE_SCAN).build();
/* test */
assertNotNull(configuration);
assertTrue(configuration.getUnmodifiableSetOfAcceptedReferenceNames().contains("test-ref-1"));
assertTrue(configuration.isRootFolderAccepted());
}
use of com.mercedesbenz.sechub.commons.model.SecHubSourceDataConfiguration in project sechub by mercedes-benz.
the class AbstractProductExecutor method configureSourceCodeHandlingIfNecessary.
private void configureSourceCodeHandlingIfNecessary(ProductExecutorData data) {
if (scanType != ScanType.CODE_SCAN) {
return;
}
// the information about paths is interesting for debugging but also necessary
// for our integration tests - see mocked_setup.json
Set<String> paths = new LinkedHashSet<>();
data.codeUploadFileSystemFolderPaths = paths;
SecHubConfiguration configuration = data.getSechubExecutionContext().getConfiguration();
Optional<SecHubCodeScanConfiguration> codeScanOpt = configuration.getCodeScan();
if (!codeScanOpt.isPresent()) {
return;
}
SecHubCodeScanConfiguration codeScan = codeScanOpt.get();
addFileSystemParts(paths, codeScan);
Set<String> usedNames = codeScan.getNamesOfUsedDataConfigurationObjects();
if (usedNames.isEmpty()) {
return;
}
List<SecHubDataConfigurationObjectInfo> found = configObjectFinder.findDataObjectsByName(configuration, usedNames);
for (SecHubDataConfigurationObjectInfo info : found) {
if (info.getType() != SecHubDataConfigurationType.SOURCE) {
continue;
}
SecHubDataConfigurationObject config = info.getDataConfigurationObject();
if (!(config instanceof SecHubSourceDataConfiguration)) {
LOG.warn("source object data was not expected {} but {}", SecHubSourceDataConfiguration.class, config.getClass());
continue;
}
SecHubSourceDataConfiguration sourceDataConfig = (SecHubSourceDataConfiguration) config;
addFileSystemParts(paths, sourceDataConfig);
}
}
Aggregations