From 94bb5feffceaa84661d6fcea6b6282916083472e Mon Sep 17 00:00:00 2001 From: felmer <felmer> Date: Tue, 24 Feb 2009 14:44:27 +0000 Subject: [PATCH] LMS-761 ExternalDataBOTest created. Preparation of DAOFactory moved to AbstractBOTest SVN: 9948 --- .../server/business/bo/AbstractBOTest.java | 27 +- .../business/bo/ExternalDataBOTest.java | 350 ++++++++++++++++++ .../business/bo/ExternalDataTableTest.java | 3 - .../server/business/bo/ProcedureBOTest.java | 12 - .../business/bo/PropertyTypeBOTest.java | 3 - .../server/business/bo/VocabularyBOTest.java | 8 +- 6 files changed, 378 insertions(+), 25 deletions(-) create mode 100644 openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/business/bo/ExternalDataBOTest.java diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/business/bo/AbstractBOTest.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/business/bo/AbstractBOTest.java index bac60279c21..51d56ad0ae0 100644 --- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/business/bo/AbstractBOTest.java +++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/business/bo/AbstractBOTest.java @@ -23,12 +23,15 @@ import org.testng.annotations.AfterMethod; import org.testng.annotations.BeforeMethod; import ch.systemsx.cisd.openbis.generic.server.dataaccess.IDAOFactory; +import ch.systemsx.cisd.openbis.generic.server.dataaccess.IDataSetTypeDAO; import ch.systemsx.cisd.openbis.generic.server.dataaccess.IDatabaseInstanceDAO; import ch.systemsx.cisd.openbis.generic.server.dataaccess.IEntityPropertyTypeDAO; import ch.systemsx.cisd.openbis.generic.server.dataaccess.IEntityTypeDAO; import ch.systemsx.cisd.openbis.generic.server.dataaccess.IExperimentDAO; import ch.systemsx.cisd.openbis.generic.server.dataaccess.IExternalDataDAO; +import ch.systemsx.cisd.openbis.generic.server.dataaccess.IFileFormatTypeDAO; import ch.systemsx.cisd.openbis.generic.server.dataaccess.IGroupDAO; +import ch.systemsx.cisd.openbis.generic.server.dataaccess.ILocatorTypeDAO; import ch.systemsx.cisd.openbis.generic.server.dataaccess.IMaterialDAO; import ch.systemsx.cisd.openbis.generic.server.dataaccess.IPersonDAO; import ch.systemsx.cisd.openbis.generic.server.dataaccess.IProcedureDAO; @@ -82,6 +85,12 @@ public abstract class AbstractBOTest extends AssertJUnit IProcedureTypeDAO procedureTypeDAO; + IDataSetTypeDAO dataSetTypeDAO; + + IFileFormatTypeDAO fileFormatTypeDAO; + + ILocatorTypeDAO locatorTypeDAO; + @BeforeMethod public void beforeMethod() { @@ -103,7 +112,9 @@ public abstract class AbstractBOTest extends AssertJUnit procedureDAO = context.mock(IProcedureDAO.class); procedureTypeDAO = context.mock(IProcedureTypeDAO.class); materialDAO = context.mock(IMaterialDAO.class); - + dataSetTypeDAO = context.mock(IDataSetTypeDAO.class); + fileFormatTypeDAO = context.mock(IFileFormatTypeDAO.class); + locatorTypeDAO = context.mock(ILocatorTypeDAO.class); context.checking(new Expectations() { { @@ -111,10 +122,24 @@ public abstract class AbstractBOTest extends AssertJUnit will(returnValue(databaseInstanceDAO)); allowing(daoFactory).getGroupDAO(); will(returnValue(groupDAO)); + allowing(daoFactory).getVocabularyDAO(); + will(returnValue(vocabularyDAO)); allowing(daoFactory).getSampleDAO(); will(returnValue(sampleDAO)); allowing(daoFactory).getSampleTypeDAO(); will(returnValue(sampleTypeDAO)); + allowing(daoFactory).getDataSetTypeDAO(); + will(returnValue(dataSetTypeDAO)); + allowing(daoFactory).getFileFormatTypeDAO(); + will(returnValue(fileFormatTypeDAO)); + allowing(daoFactory).getLocatorTypeDAO(); + will(returnValue(locatorTypeDAO)); + allowing(daoFactory).getExternalDataDAO(); + will(returnValue(externalDataDAO)); + allowing(daoFactory).getProcedureTypeDAO(); + will(returnValue(procedureTypeDAO)); + allowing(daoFactory).getProcedureDAO(); + will(returnValue(procedureDAO)); } }); } diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/business/bo/ExternalDataBOTest.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/business/bo/ExternalDataBOTest.java new file mode 100644 index 00000000000..a9cd04c5333 --- /dev/null +++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/business/bo/ExternalDataBOTest.java @@ -0,0 +1,350 @@ +/* + * Copyright 2009 ETH Zuerich, CISD + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package ch.systemsx.cisd.openbis.generic.server.business.bo; + +import static ch.systemsx.cisd.openbis.generic.server.business.ManagerTestTool.EXAMPLE_SESSION; + +import java.util.Date; + +import org.hamcrest.BaseMatcher; +import org.hamcrest.Description; +import org.jmock.Expectations; +import org.testng.annotations.Test; + +import ch.systemsx.cisd.common.types.BooleanOrUnknown; +import ch.systemsx.cisd.openbis.generic.shared.dto.DataPE; +import ch.systemsx.cisd.openbis.generic.shared.dto.DataSetType; +import ch.systemsx.cisd.openbis.generic.shared.dto.DataSetTypePE; +import ch.systemsx.cisd.openbis.generic.shared.dto.DatabaseInstancePE; +import ch.systemsx.cisd.openbis.generic.shared.dto.ExperimentPE; +import ch.systemsx.cisd.openbis.generic.shared.dto.ExternalData; +import ch.systemsx.cisd.openbis.generic.shared.dto.ExternalDataPE; +import ch.systemsx.cisd.openbis.generic.shared.dto.FileFormatType; +import ch.systemsx.cisd.openbis.generic.shared.dto.FileFormatTypePE; +import ch.systemsx.cisd.openbis.generic.shared.dto.GroupPE; +import ch.systemsx.cisd.openbis.generic.shared.dto.LocatorType; +import ch.systemsx.cisd.openbis.generic.shared.dto.LocatorTypePE; +import ch.systemsx.cisd.openbis.generic.shared.dto.ProcedurePE; +import ch.systemsx.cisd.openbis.generic.shared.dto.ProcedureTypePE; +import ch.systemsx.cisd.openbis.generic.shared.dto.ProjectPE; +import ch.systemsx.cisd.openbis.generic.shared.dto.SamplePE; +import ch.systemsx.cisd.openbis.generic.shared.dto.SourceType; +import ch.systemsx.cisd.openbis.generic.shared.dto.StorageFormat; +import ch.systemsx.cisd.openbis.generic.shared.dto.VocabularyPE; +import ch.systemsx.cisd.openbis.generic.shared.dto.VocabularyTermPE; +import ch.systemsx.cisd.openbis.generic.shared.dto.types.DataSetTypeCode; +import ch.systemsx.cisd.openbis.generic.shared.dto.types.ProcedureTypeCode; + +/** + * + * + * @author Franz-Josef Elmer + */ +public class ExternalDataBOTest extends AbstractBOTest +{ + private static final String PARENT_CODE = "parent"; + private static final Date PRODUCTION_DATE = new Date(1001); + private static final String DATA_PRODUCER_CODE = "DPC"; + private static final String DATA_SET_CODE = "DS1"; + private static final String LOCATION = "folder/subfolder/file.fft"; + private static final LocatorType LOCATOR_TYPE = new LocatorType("LT"); + private static final FileFormatType FILE_FORMAT_TYPE = new FileFormatType("FFT"); + private static final DataSetType DATA_SET_TYPE = new DataSetType("DST"); + + @Test + public void testDefineWithoutParentDataSet() + { + final DataSetTypePE dataSetType = new DataSetTypePE(); + final FileFormatTypePE fileFormatType = new FileFormatTypePE(); + final VocabularyPE vocabulary = new VocabularyPE(); + vocabulary.addTerm(new VocabularyTermPE()); + VocabularyTermPE vocabularyTerm = new VocabularyTermPE(); + vocabularyTerm.setCode(StorageFormat.PROPRIETARY.toString()); + vocabulary.addTerm(vocabularyTerm); + final LocatorTypePE locatorType = new LocatorTypePE(); + ProcedurePE procedure = new ProcedurePE(); + SamplePE sample = new SamplePE(); + prepareDefine(dataSetType, fileFormatType, vocabulary, locatorType); + + IExternalDataBO sampleBO = createSampleBO(); + sampleBO.define(createData(null), procedure, sample, SourceType.DERIVED); + ExternalDataPE externalData = sampleBO.getExternalData(); + + assertEquals(DATA_SET_CODE, externalData.getCode()); + assertEquals(BooleanOrUnknown.U, externalData.getComplete()); + assertEquals(DATA_PRODUCER_CODE, externalData.getDataProducerCode()); + assertSame(dataSetType, externalData.getDataSetType()); + assertSame(fileFormatType, externalData.getFileFormatType()); + assertSame(locatorType, externalData.getLocatorType()); + assertEquals(LOCATION, externalData.getLocation()); + assertEquals(0, externalData.getParents().size()); + assertSame(procedure, externalData.getProcedure()); + assertEquals(PRODUCTION_DATE, externalData.getProductionDate()); + assertSame(null, externalData.getSampleAcquiredFrom()); + assertSame(sample, externalData.getSampleDerivedFrom()); + assertEquals(StorageFormat.PROPRIETARY, externalData.getStorageFormat()); + assertSame(vocabularyTerm, externalData.getStorageFormatVocabularyTerm()); + context.assertIsSatisfied(); + } + + @Test + public void testDefineWithExistingParentDataSet() + { + final DataSetTypePE dataSetType = new DataSetTypePE(); + final FileFormatTypePE fileFormatType = new FileFormatTypePE(); + final VocabularyPE vocabulary = new VocabularyPE(); + vocabulary.addTerm(new VocabularyTermPE()); + VocabularyTermPE vocabularyTerm = new VocabularyTermPE(); + vocabularyTerm.setCode(StorageFormat.PROPRIETARY.toString()); + vocabulary.addTerm(vocabularyTerm); + final LocatorTypePE locatorType = new LocatorTypePE(); + ProcedurePE procedure = new ProcedurePE(); + SamplePE sample = new SamplePE(); + prepareDefine(dataSetType, fileFormatType, vocabulary, locatorType); + final DataPE data = new DataPE(); + context.checking(new Expectations() + { + { + one(externalDataDAO).tryToFindDataSetByCode(PARENT_CODE); + will(returnValue(data)); + } + }); + + IExternalDataBO sampleBO = createSampleBO(); + sampleBO.define(createData(PARENT_CODE), procedure, sample, SourceType.MEASUREMENT); + ExternalDataPE externalData = sampleBO.getExternalData(); + + assertSame(sample, externalData.getSampleAcquiredFrom()); + assertSame(null, externalData.getSampleDerivedFrom()); + assertEquals(1, externalData.getParents().size()); + assertSame(data, externalData.getParents().iterator().next()); + context.assertIsSatisfied(); + } + + @Test + public void testDefineWithNonExistingParentDataSet() + { + final DataSetTypePE dataSetType = new DataSetTypePE(); + final FileFormatTypePE fileFormatType = new FileFormatTypePE(); + final VocabularyPE vocabulary = new VocabularyPE(); + vocabulary.addTerm(new VocabularyTermPE()); + VocabularyTermPE vocabularyTerm = new VocabularyTermPE(); + vocabularyTerm.setCode(StorageFormat.PROPRIETARY.toString()); + vocabulary.addTerm(vocabularyTerm); + final LocatorTypePE locatorType = new LocatorTypePE(); + final ProcedurePE procedure = new ProcedurePE(); + ProcedureTypePE procedureType = new ProcedureTypePE(); + procedureType.setCode(ProcedureTypeCode.UNKNOWN.getCode()); + procedure.setProcedureType(procedureType); + procedure.setExperiment(createExperiment()); + final SamplePE sample = new SamplePE(); + prepareDefine(dataSetType, fileFormatType, vocabulary, locatorType); + final DataSetTypePE dataSetTypeUnknown = new DataSetTypePE(); + final DataPE parentData = new DataPE(); + parentData.setCode(PARENT_CODE); + parentData.setDataSetType(dataSetTypeUnknown); + parentData.setProcedure(procedure); + parentData.setSampleDerivedFrom(sample); + parentData.setPlaceholder(true); + context.checking(new Expectations() + { + { + one(externalDataDAO).tryToFindDataSetByCode(PARENT_CODE); + will(returnValue(null)); + + one(dataSetTypeDAO).tryToFindDataSetTypeByCode(ProcedureTypeCode.UNKNOWN.getCode()); + will(returnValue(dataSetTypeUnknown)); + + one(externalDataDAO).createDataSet(parentData); + } + }); + + IExternalDataBO sampleBO = createSampleBO(); + sampleBO.define(createData(PARENT_CODE), procedure, sample, SourceType.MEASUREMENT); + ExternalDataPE externalData = sampleBO.getExternalData(); + + assertSame(sample, externalData.getSampleAcquiredFrom()); + assertSame(null, externalData.getSampleDerivedFrom()); + assertEquals(1, externalData.getParents().size()); + assertEquals(parentData, externalData.getParents().iterator().next()); + context.assertIsSatisfied(); + } + + @Test + public void testDefineWithNonExistingParentDataSetAndNonExsitingProcedure() + { + final DataSetTypePE dataSetType = new DataSetTypePE(); + final FileFormatTypePE fileFormatType = new FileFormatTypePE(); + final VocabularyPE vocabulary = new VocabularyPE(); + vocabulary.addTerm(new VocabularyTermPE()); + VocabularyTermPE vocabularyTerm = new VocabularyTermPE(); + vocabularyTerm.setCode(StorageFormat.PROPRIETARY.toString()); + vocabulary.addTerm(vocabularyTerm); + final LocatorTypePE locatorType = new LocatorTypePE(); + final ProcedurePE procedure = new ProcedurePE(); + final ProcedureTypePE procedureType = new ProcedureTypePE(); + procedureType.setCode("new"); + procedure.setProcedureType(procedureType); + procedure.setExperiment(createExperiment()); + final SamplePE sample = new SamplePE(); + prepareDefine(dataSetType, fileFormatType, vocabulary, locatorType); + final DataSetTypePE dataSetTypeUnknown = new DataSetTypePE(); + final DataPE parentData = new DataPE(); + parentData.setCode(PARENT_CODE); + parentData.setDataSetType(dataSetTypeUnknown); + parentData.setProcedure(procedure); + parentData.setSampleDerivedFrom(sample); + parentData.setPlaceholder(true); + final ProcedureTypePE procedureTypeUnknown = new ProcedureTypePE(); + context.checking(new Expectations() + { + { + one(externalDataDAO).tryToFindDataSetByCode(PARENT_CODE); + will(returnValue(null)); + + one(dataSetTypeDAO).tryToFindDataSetTypeByCode( + DataSetTypeCode.UNKNOWN.getCode()); + will(returnValue(dataSetTypeUnknown)); + + one(procedureTypeDAO).tryFindProcedureTypeByCode( + ProcedureTypeCode.UNKNOWN.getCode()); + will(returnValue(procedureTypeUnknown)); + + ProcedurePE newProcedure = new ProcedurePE(); + newProcedure.setProcedureType(procedureTypeUnknown); + newProcedure.setExperiment(createExperiment()); + one(procedureDAO).createProcedure(newProcedure); + + one(externalDataDAO).createDataSet(parentData); + } + }); + + IExternalDataBO sampleBO = createSampleBO(); + sampleBO.define(createData(PARENT_CODE), procedure, sample, SourceType.MEASUREMENT); + ExternalDataPE externalData = sampleBO.getExternalData(); + + assertSame(sample, externalData.getSampleAcquiredFrom()); + assertSame(null, externalData.getSampleDerivedFrom()); + assertEquals(1, externalData.getParents().size()); + assertEquals(parentData, externalData.getParents().iterator().next()); + context.assertIsSatisfied(); + } + + @Test + public void testSaveNewDataSet() + { + final DataSetTypePE dataSetType = new DataSetTypePE(); + final FileFormatTypePE fileFormatType = new FileFormatTypePE(); + final VocabularyPE vocabulary = new VocabularyPE(); + vocabulary.addTerm(new VocabularyTermPE()); + VocabularyTermPE vocabularyTerm = new VocabularyTermPE(); + vocabularyTerm.setCode(StorageFormat.PROPRIETARY.toString()); + vocabulary.addTerm(vocabularyTerm); + final LocatorTypePE locatorType = new LocatorTypePE(); + ProcedurePE procedure = new ProcedurePE(); + SamplePE sample = new SamplePE(); + prepareDefine(dataSetType, fileFormatType, vocabulary, locatorType); + context.checking(new Expectations() + { + { + one(externalDataDAO).tryToFindDataSetByCode(DATA_SET_CODE); + will(returnValue(null)); + + one(externalDataDAO).createDataSet(with(new BaseMatcher<DataPE>() + { + public void describeTo(Description description) + { + description.appendText(DATA_SET_CODE); + } + + public boolean matches(Object item) + { + if (item instanceof DataPE) + { + DataPE data = (DataPE) item; + return data.getCode().equals(DATA_SET_CODE); + } + return false; + } + })); + } + }); + + IExternalDataBO sampleBO = createSampleBO(); + sampleBO.define(createData(null), procedure, sample, SourceType.DERIVED); + sampleBO.save(); + + context.assertIsSatisfied(); + } + + private ExperimentPE createExperiment() + { + ExperimentPE experiment = new ExperimentPE(); + experiment.setCode("EXP1"); + ProjectPE project = new ProjectPE(); + project.setCode("P"); + GroupPE group = new GroupPE(); + group.setCode("G"); + DatabaseInstancePE databaseInstance = new DatabaseInstancePE(); + databaseInstance.setCode("DB"); + group.setDatabaseInstance(databaseInstance); + project.setGroup(group); + experiment.setProject(project); + return experiment; + } + + private void prepareDefine(final DataSetTypePE dataSetType, + final FileFormatTypePE fileFormatType, final VocabularyPE vocabulary, + final LocatorTypePE locatorType) + { + context.checking(new Expectations() + { + { + one(dataSetTypeDAO).tryToFindDataSetTypeByCode(DATA_SET_TYPE.getCode()); + will(returnValue(dataSetType)); + one(fileFormatTypeDAO).tryToFindFileFormatTypeByCode(FILE_FORMAT_TYPE.getCode()); + will(returnValue(fileFormatType)); + one(vocabularyDAO).tryFindVocabularyByCode(StorageFormat.VOCABULARY_CODE); + will(returnValue(vocabulary)); + one(locatorTypeDAO).tryToFindLocatorTypeByCode(LOCATOR_TYPE.getCode()); + will(returnValue(locatorType)); + } + }); + } + + private ExternalData createData(String parentDataSetCodeOrNull) + { + ExternalData data = new ExternalData(); + data.setCode(DATA_SET_CODE); + data.setParentDataSetCode(parentDataSetCodeOrNull); + data.setDataProducerCode(DATA_PRODUCER_CODE); + data.setProductionDate(PRODUCTION_DATE); + data.setComplete(BooleanOrUnknown.U); + data.setStorageFormat(StorageFormat.PROPRIETARY); + data.setDataSetType(DATA_SET_TYPE); + data.setFileFormatType(FILE_FORMAT_TYPE); + data.setLocatorType(LOCATOR_TYPE); + data.setLocation(LOCATION); + return data; + } + + private final IExternalDataBO createSampleBO() + { + return new ExternalDataBO(daoFactory, EXAMPLE_SESSION); + } + +} diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/business/bo/ExternalDataTableTest.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/business/bo/ExternalDataTableTest.java index 8650c6a0ae1..2b7ec47f58a 100644 --- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/business/bo/ExternalDataTableTest.java +++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/business/bo/ExternalDataTableTest.java @@ -91,9 +91,6 @@ public final class ExternalDataTableTest extends AbstractBOTest context.checking(new Expectations() { { - allowing(daoFactory).getExternalDataDAO(); - will(returnValue(externalDataDAO)); - one(databaseInstanceDAO).tryFindDatabaseInstanceByCode(dbCode); will(returnValue(databaseInstancePE)); diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/business/bo/ProcedureBOTest.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/business/bo/ProcedureBOTest.java index 35c4c1b9c24..9987c0e5136 100644 --- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/business/bo/ProcedureBOTest.java +++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/business/bo/ProcedureBOTest.java @@ -48,9 +48,6 @@ public final class ProcedureBOTest extends AbstractBOTest context.checking(new Expectations() { { - one(daoFactory).getProcedureTypeDAO(); - will(returnValue(procedureTypeDAO)); - one(procedureTypeDAO).tryFindProcedureTypeByCode(procedureTypeCode); will(returnValue(procedureType)); } @@ -105,9 +102,6 @@ public final class ProcedureBOTest extends AbstractBOTest context.checking(new Expectations() { { - one(daoFactory).getProcedureDAO(); - will(returnValue(procedureDAO)); - one(procedureDAO).createProcedure(procedure); } }); @@ -129,9 +123,6 @@ public final class ProcedureBOTest extends AbstractBOTest context.checking(new Expectations() { { - one(daoFactory).getProcedureDAO(); - will(returnValue(procedureDAO)); - one(procedureDAO).createProcedure(procedure); will(throwException(new DataIntegrityViolationException("data access problem"))); } @@ -159,9 +150,6 @@ public final class ProcedureBOTest extends AbstractBOTest context.checking(new Expectations() { { - one(daoFactory).getProcedureTypeDAO(); - will(returnValue(procedureTypeDAO)); - one(procedureTypeDAO).tryFindProcedureTypeByCode(procedureTypeCode); will(returnValue(procedureTypeDTO)); } diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/business/bo/PropertyTypeBOTest.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/business/bo/PropertyTypeBOTest.java index 42a1697f134..636ccfd1cc9 100644 --- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/business/bo/PropertyTypeBOTest.java +++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/business/bo/PropertyTypeBOTest.java @@ -189,9 +189,6 @@ public final class PropertyTypeBOTest extends AbstractBOTest one(propertyTypeDAO).getDataTypeByCode(EntityDataType.CONTROLLEDVOCABULARY); will(returnValue(dataTypePE)); - allowing(daoFactory).getVocabularyDAO(); - will(returnValue(vocabularyDAO)); - one(vocabularyDAO).tryFindVocabularyByCode(vocabulary.getCode()); will(returnValue(new VocabularyPE())); } diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/business/bo/VocabularyBOTest.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/business/bo/VocabularyBOTest.java index fc26db937e0..2760cf3a4b4 100644 --- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/business/bo/VocabularyBOTest.java +++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/business/bo/VocabularyBOTest.java @@ -141,15 +141,13 @@ public final class VocabularyBOTest extends AbstractBOTest one(daoFactory).getHomeDatabaseInstance(); will(returnValue(ManagerTestTool.EXAMPLE_DATABASE_INSTANCE)); - one(daoFactory).getVocabularyDAO(); - will(returnValue(vocabularyDAO)); - one(vocabularyDAO).createVocabulary(with(aNonNull(VocabularyPE.class))); } }); final Vocabulary vocabulary = createVocabulary(); vocabularyBO.define(vocabulary); vocabularyBO.save(); + context.assertIsSatisfied(); } @Test @@ -162,9 +160,6 @@ public final class VocabularyBOTest extends AbstractBOTest one(daoFactory).getHomeDatabaseInstance(); will(returnValue(ManagerTestTool.EXAMPLE_DATABASE_INSTANCE)); - one(daoFactory).getVocabularyDAO(); - will(returnValue(vocabularyDAO)); - one(vocabularyDAO).createVocabulary(with(aNonNull(VocabularyPE.class))); will(throwException(new DataIntegrityViolationException(null))); } @@ -179,5 +174,6 @@ public final class VocabularyBOTest extends AbstractBOTest { // Nothing to do here. } + context.assertIsSatisfied(); } } -- GitLab