Skip to content
Snippets Groups Projects
Commit 1be12145 authored by cramakri's avatar cramakri
Browse files

LMS-1398 Hook up the SampleMetadatExtractor to the CinaDataSetInfoExtractor and add tests.

SVN: 15078
parent a419a90b
No related branches found
No related tags found
No related merge requests found
...@@ -70,14 +70,16 @@ public class CinaDataSetInfoExtractor implements IDataSetInfoExtractor ...@@ -70,14 +70,16 @@ public class CinaDataSetInfoExtractor implements IDataSetInfoExtractor
switch (folderType) switch (folderType)
{ {
case DATA_SET: case DATA_SET:
processDataSetFolder(metadata.tryGetMetadataFile(), dataSetInformation, openbisService); processDataSetFolder(metadata.tryGetMetadataFile(), dataSetInformation,
openbisService);
break; break;
case EXPERIMENT: case EXPERIMENT:
processExperimentFolder(metadata.tryGetMetadataFile(), dataSetInformation, processExperimentFolder(metadata.tryGetMetadataFile(), dataSetInformation,
openbisService); openbisService);
break; break;
case SAMPLE: case SAMPLE:
processSampleFolder(metadata.tryGetMetadataFile(), dataSetInformation, openbisService); processSampleFolder(metadata.tryGetMetadataFile(), dataSetInformation,
openbisService);
break; break;
case UNKNOWN: case UNKNOWN:
break; break;
...@@ -114,7 +116,19 @@ public class CinaDataSetInfoExtractor implements IDataSetInfoExtractor ...@@ -114,7 +116,19 @@ public class CinaDataSetInfoExtractor implements IDataSetInfoExtractor
private void processSampleFolder(final File metadataFile, private void processSampleFolder(final File metadataFile,
final DataSetInformation dataSetInformation, IEncapsulatedOpenBISService openbisService) final DataSetInformation dataSetInformation, IEncapsulatedOpenBISService openbisService)
{ {
try
{
HashMap<String, String> sampleMetadata = convertMetadataFileToMap(metadataFile);
SampleMetadataExtractor extractor =
new SampleMetadataExtractor(dataSetInformation, sampleMetadata,
getEntityCodeSuffix(), openbisService);
extractor.processMetadataAndFillDataSetInformation();
} catch (IOException ex)
{
UserFailureException userFailure =
new UserFailureException("Could not register sample", ex);
throw userFailure;
}
} }
/** /**
......
...@@ -29,8 +29,11 @@ import org.testng.annotations.Test; ...@@ -29,8 +29,11 @@ import org.testng.annotations.Test;
import ch.systemsx.cisd.common.exceptions.UserFailureException; import ch.systemsx.cisd.common.exceptions.UserFailureException;
import ch.systemsx.cisd.openbis.dss.generic.shared.IEncapsulatedOpenBISService; import ch.systemsx.cisd.openbis.dss.generic.shared.IEncapsulatedOpenBISService;
import ch.systemsx.cisd.openbis.dss.generic.shared.dto.DataSetInformation; import ch.systemsx.cisd.openbis.dss.generic.shared.dto.DataSetInformation;
import ch.systemsx.cisd.openbis.generic.shared.basic.dto.Experiment;
import ch.systemsx.cisd.openbis.generic.shared.basic.dto.NewExperiment; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.NewExperiment;
import ch.systemsx.cisd.openbis.generic.shared.basic.dto.NewSample;
import ch.systemsx.cisd.openbis.generic.shared.dto.identifier.ExperimentIdentifier; import ch.systemsx.cisd.openbis.generic.shared.dto.identifier.ExperimentIdentifier;
import ch.systemsx.cisd.openbis.generic.shared.dto.identifier.SampleIdentifier;
/** /**
* @author Chandrasekhar Ramakrishnan * @author Chandrasekhar Ramakrishnan
...@@ -79,25 +82,30 @@ public class CinaDataSetInfoExtractorTest extends AssertJUnit ...@@ -79,25 +82,30 @@ public class CinaDataSetInfoExtractorTest extends AssertJUnit
assertTrue("no-one@nowhere.ch".equals(dataSetInformation.tryGetUploadingUserEmail())); assertTrue("no-one@nowhere.ch".equals(dataSetInformation.tryGetUploadingUserEmail()));
} }
// @Test @Test
// public void testRegisterSample() public void testRegisterSample()
// { {
// context.checking(new Expectations() final Experiment existingExperiment = new Experiment();
// { context.checking(new Expectations()
// { {
// one(openbisService).tryToGetExperiment(with(any(ExperimentIdentifier.class))); {
// will(returnValue(null)); one(openbisService).tryToGetExperiment(with(any(ExperimentIdentifier.class)));
// one(openbisService).registerExperiment(with(any(NewExperiment.class))); will(returnValue(existingExperiment));
// } one(openbisService).tryGetSampleWithExperiment(
// }); with(any(SampleIdentifier.class)));
// will(returnValue(null));
// File sampleFolder = one(openbisService).registerSample(with(any(NewSample.class)),
// new File("sourceTest/java/ch/systemsx/cisd/cina/dss/info/sample-data-folder"); with(aNull(String.class)));
// DataSetInformation dataSetInformation = }
// extractor.getDataSetInformation(sampleFolder, openbisService); });
//
// assertTrue("no-one@nowhere.ch".equals(dataSetInformation.tryGetUploadingUserEmail())); File sampleFolder =
// } new File("sourceTest/java/ch/systemsx/cisd/cina/dss/info/sample-data-folder");
DataSetInformation dataSetInformation =
extractor.getDataSetInformation(sampleFolder, openbisService);
assertTrue("no-one@nowhere.ch".equals(dataSetInformation.tryGetUploadingUserEmail()));
}
@Test @Test
public void testRegisterAmbiguousFolder() public void testRegisterAmbiguousFolder()
......
project.code = CINA1 experiment.identifier = /CINA/CINA1/EXP1
experiment.code = EXP experiment.owner-email = no-one@nowhere.ch
experiment.owner-email = no-one@nowhere.ch sample.code-prefix = S
\ No newline at end of file \ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment