From 014c63887de86a7f7b871a2a84e3c1ec7f2ba668 Mon Sep 17 00:00:00 2001 From: cramakri <cramakri> Date: Fri, 5 Aug 2011 18:05:45 +0000 Subject: [PATCH] LMS-2440 Fixing broken tests. SVN: 22364 --- .../db/EntityPropertyTypeDAOTest.java | 23 ++++++-------- .../dataaccess/db/ExperimentDAOTest.java | 31 +++++++------------ .../server/dataaccess/db/SampleDAOTest.java | 27 +++++++--------- .../systemtest/ExperimentBrowsingTest.java | 4 +-- .../078/020=experiment_properties.tsv | 1 + .../078/040=sample_relationships.tsv | 4 +-- .../sql/postgresql/078/043=samples_all.tsv | 3 +- 7 files changed, 39 insertions(+), 54 deletions(-) diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/EntityPropertyTypeDAOTest.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/EntityPropertyTypeDAOTest.java index 80fb9a6a3ad..0de7ea4c2ff 100644 --- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/EntityPropertyTypeDAOTest.java +++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/EntityPropertyTypeDAOTest.java @@ -34,9 +34,9 @@ import ch.systemsx.cisd.openbis.generic.shared.dto.EntityPropertyPE; import ch.systemsx.cisd.openbis.generic.shared.dto.EntityTypePE; import ch.systemsx.cisd.openbis.generic.shared.dto.EntityTypePropertyTypePE; import ch.systemsx.cisd.openbis.generic.shared.dto.ExperimentPE; -import ch.systemsx.cisd.openbis.generic.shared.dto.ExperimentPropertyPE; import ch.systemsx.cisd.openbis.generic.shared.dto.IEntityPropertiesHolder; import ch.systemsx.cisd.openbis.generic.shared.dto.PropertyTypePE; +import ch.systemsx.cisd.openbis.generic.shared.dto.TableNames; 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.VocabularyTermWithStats; @@ -170,25 +170,20 @@ public class EntityPropertyTypeDAOTest extends AbstractDAOTest assertEquals("FLY", properties.get(0).getVocabularyTerm().getCode()); } - @Test(groups = "broken-deletion") - // FIXME LMS-2440 + @Test public void testDelete() { EntityTypePropertyTypePE assignment = tryToGetAssignment(EntityKind.EXPERIMENT, "SIRNA_HCS", "DESCRIPTION"); - assertEquals(false, assignment.getPropertyValues().isEmpty()); - ExperimentPropertyPE propertyValue = - (ExperimentPropertyPE) (assignment.getPropertyValues().iterator().next()); - ExperimentPE experiment = propertyValue.getEntity(); - long id = experiment.getId(); - int totalProps = experiment.getProperties().size(); - + // Remember how many rows are in the properties table before we delete + int beforeDeletionPropertiesRowCount = + countRowsInTable(TableNames.EXPERIMENT_PROPERTIES_TABLE); + assertEquals(true, beforeDeletionPropertiesRowCount > 0); daoFactory.getEntityPropertyTypeDAO(EntityKind.EXPERIMENT).delete(assignment); - // load the experiment once again - it was cleared from session - experiment = new ExperimentPE(); - daoFactory.getSessionFactory().getCurrentSession().load(experiment, id); - assertEquals(totalProps - 1, experiment.getProperties().size()); + int afterDeletionPropertiesRowCount = + countRowsInTable(TableNames.EXPERIMENT_PROPERTIES_TABLE); + assertEquals(beforeDeletionPropertiesRowCount - 7, afterDeletionPropertiesRowCount); } private EntityTypePropertyTypePE tryToGetAssignment(EntityKind entityKind, diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/ExperimentDAOTest.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/ExperimentDAOTest.java index 301835128cf..04ddd1e7ab2 100644 --- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/ExperimentDAOTest.java +++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/ExperimentDAOTest.java @@ -42,13 +42,12 @@ import ch.systemsx.cisd.openbis.generic.shared.basic.TechId; import ch.systemsx.cisd.openbis.generic.shared.dto.AttachmentPE; import ch.systemsx.cisd.openbis.generic.shared.dto.DataPE; import ch.systemsx.cisd.openbis.generic.shared.dto.EntityTypePE; -import ch.systemsx.cisd.openbis.generic.shared.dto.EntityTypePropertyTypePE; import ch.systemsx.cisd.openbis.generic.shared.dto.ExperimentPE; -import ch.systemsx.cisd.openbis.generic.shared.dto.ExperimentPropertyPE; import ch.systemsx.cisd.openbis.generic.shared.dto.ExperimentTypePE; import ch.systemsx.cisd.openbis.generic.shared.dto.ExternalDataPE; import ch.systemsx.cisd.openbis.generic.shared.dto.ProjectPE; import ch.systemsx.cisd.openbis.generic.shared.dto.SpacePE; +import ch.systemsx.cisd.openbis.generic.shared.dto.TableNames; import ch.systemsx.cisd.openbis.generic.shared.dto.properties.EntityKind; import ch.systemsx.cisd.openbis.generic.shared.dto.types.ExperimentTypeCode; @@ -152,7 +151,7 @@ public class ExperimentDAOTest extends AbstractDAOTest daoFactory.getExperimentDAO().listExperimentsWithProperties(expType, projectDefault, null); Collections.sort(experiments); - assertEquals(2, experiments.size()); + assertEquals(3, experiments.size()); assertContains(experiments, CISD_CISD_DEFAULT_EXP_REUSE); assertNotContains(experiments, CISD_CISD_DEFAULT_EXP_X); } @@ -176,7 +175,7 @@ public class ExperimentDAOTest extends AbstractDAOTest daoFactory.getExperimentDAO().listExperimentsWithProperties(expType, null, spaceCisd); Collections.sort(experiments); - assertEquals(6, experiments.size()); + assertEquals(7, experiments.size()); assertContains(experiments, CISD_CISD_NEMO_EXP10); assertContains(experiments, CISD_CISD_NEMO_EXP11); assertContains(experiments, CISD_CISD_DEFAULT_EXP_REUSE); @@ -244,35 +243,29 @@ public class ExperimentDAOTest extends AbstractDAOTest return experiment; } - @Test(groups = "broken-deletion") - // FIXME LMS-2440 + @Test public final void testDeleteWithProperties() { final IExperimentDAO experimentDAO = daoFactory.getExperimentDAO(); - final ExperimentPE deletedExperiment = findExperiment("/CISD/DEFAULT/EXP-X"); + final ExperimentPE deletedExperiment = findExperiment("/CISD/DEFAULT/EXP-Y"); // Deleted experiment should have all collections which prevent it from deletion empty. - assertTrue(deletedExperiment.getAttachments().isEmpty()); assertTrue(deletedExperiment.getDataSets().isEmpty()); assertTrue(deletedExperiment.getSamples().isEmpty()); + // Remember how many rows are in the properties table before we delete + int beforeDeletionPropertiesRowCount = + countRowsInTable(TableNames.EXPERIMENT_PROPERTIES_TABLE); + // delete experimentDAO.delete(deletedExperiment); // test successful deletion of experiment assertNull(experimentDAO.tryGetByTechId(TechId.create(deletedExperiment))); - // test successful deletion of sample properties - assertFalse(deletedExperiment.getProperties().isEmpty()); - List<EntityTypePropertyTypePE> retrievedPropertyTypes = - daoFactory.getEntityPropertyTypeDAO(EntityKind.EXPERIMENT).listEntityPropertyTypes( - deletedExperiment.getEntityType()); - for (ExperimentPropertyPE property : deletedExperiment.getProperties()) - { - int index = retrievedPropertyTypes.indexOf(property.getEntityTypePropertyType()); - EntityTypePropertyTypePE retrievedPropertyType = retrievedPropertyTypes.get(index); - assertFalse(retrievedPropertyType.getPropertyValues().contains(property)); - } + int afterDeletionPropertiesRowCount = + countRowsInTable(TableNames.EXPERIMENT_PROPERTIES_TABLE); + assertEquals(beforeDeletionPropertiesRowCount - 1, afterDeletionPropertiesRowCount); } private static final String ATT_CONTENTS_TABLE = "attachment_contents"; diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/SampleDAOTest.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/SampleDAOTest.java index 0b55167c63c..d6d2ce436a7 100644 --- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/SampleDAOTest.java +++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/SampleDAOTest.java @@ -42,7 +42,6 @@ import ch.systemsx.cisd.openbis.generic.server.dataaccess.ISampleDAO; import ch.systemsx.cisd.openbis.generic.shared.basic.BasicConstant; import ch.systemsx.cisd.openbis.generic.shared.basic.TechId; import ch.systemsx.cisd.openbis.generic.shared.dto.DatabaseInstancePE; -import ch.systemsx.cisd.openbis.generic.shared.dto.EntityTypePropertyTypePE; import ch.systemsx.cisd.openbis.generic.shared.dto.EventPE; import ch.systemsx.cisd.openbis.generic.shared.dto.EventPE.EntityType; import ch.systemsx.cisd.openbis.generic.shared.dto.EventType; @@ -53,7 +52,7 @@ import ch.systemsx.cisd.openbis.generic.shared.dto.SamplePropertyPE; import ch.systemsx.cisd.openbis.generic.shared.dto.SampleRelationshipPE; import ch.systemsx.cisd.openbis.generic.shared.dto.SampleTypePE; import ch.systemsx.cisd.openbis.generic.shared.dto.SpacePE; -import ch.systemsx.cisd.openbis.generic.shared.dto.properties.EntityKind; +import ch.systemsx.cisd.openbis.generic.shared.dto.TableNames; import ch.systemsx.cisd.openbis.generic.shared.util.HibernateUtils; /** @@ -340,8 +339,7 @@ public final class SampleDAOTest extends AbstractDAOTest return eventDAO.tryFind(sample.getPermId(), EntityType.SAMPLE, EventType.DELETION); } - @Test(groups = "broken-deletion") - // FIXME LMS-2440 + @Test public final void testDeleteWithProperties() { final ISampleDAO sampleDAO = daoFactory.getSampleDAO(); @@ -354,6 +352,9 @@ public final class SampleDAOTest extends AbstractDAOTest assertTrue(deletedSample.getContained().isEmpty()); assertFalse(deletedSample.getProperties().isEmpty()); + // Remember how many rows are in the properties table before we delete + int beforeDeletionPropertiesRowCount = countRowsInTable(TableNames.SAMPLE_PROPERTIES_TABLE); + // delete deleteSample(deletedSample); @@ -361,15 +362,10 @@ public final class SampleDAOTest extends AbstractDAOTest assertNull(sampleDAO.tryGetByTechId(TechId.create(deletedSample))); // test successful deletion of sample properties - List<EntityTypePropertyTypePE> retrievedPropertyTypes = - daoFactory.getEntityPropertyTypeDAO(EntityKind.SAMPLE).listEntityPropertyTypes( - deletedSample.getEntityType()); - for (SamplePropertyPE property : deletedSample.getProperties()) - { - int index = retrievedPropertyTypes.indexOf(property.getEntityTypePropertyType()); - EntityTypePropertyTypePE retrievedPropertyType = retrievedPropertyTypes.get(index); - assertFalse(retrievedPropertyType.getPropertyValues().contains(property)); - } + int afterDeletionPropertiesRowCount = countRowsInTable(TableNames.SAMPLE_PROPERTIES_TABLE); + + assertEquals(afterDeletionPropertiesRowCount, beforeDeletionPropertiesRowCount + - deletedSample.getProperties().size()); } private static final String ATT_CONTENTS_TABLE = "attachment_contents"; @@ -421,11 +417,10 @@ public final class SampleDAOTest extends AbstractDAOTest deleteSample(deletedSample); } - @Test(groups = "broken-deletion") - // FIXME LMS-2440 + @Test public final void testDeleteWithGeneratedSamples() { - final SamplePE deletedSample = findSample("3VCP2", "CISD"); + final SamplePE deletedSample = findSample("3VCP2-NEW", "CISD"); // Deleted sample should have 'generated' samples which prevent it from deletion. // Other connections which also prevent sample deletion should be empty in this test. diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/ExperimentBrowsingTest.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/ExperimentBrowsingTest.java index 88c22550ee8..5271b98537d 100644 --- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/ExperimentBrowsingTest.java +++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/ExperimentBrowsingTest.java @@ -78,8 +78,8 @@ public class ExperimentBrowsingTest extends SystemTestCase assertEquals(null, e1.getDeletion()); assertObjectWithCodeDoesNotExists(resultSet, "EXP-X"); // deleted assertEquals(false, resultSet.getResultSet().isPartial()); - assertEquals(2, resultSet.getResultSet().getTotalLength()); - assertEquals(2, resultSet.getResultSet().getList().size()); + assertEquals(3, resultSet.getResultSet().getTotalLength()); + assertEquals(3, resultSet.getResultSet().getList().size()); } @Test diff --git a/openbis/sourceTest/sql/postgresql/078/020=experiment_properties.tsv b/openbis/sourceTest/sql/postgresql/078/020=experiment_properties.tsv index 49a8ad788d3..3b4dc448c8a 100644 --- a/openbis/sourceTest/sql/postgresql/078/020=experiment_properties.tsv +++ b/openbis/sourceTest/sql/postgresql/078/020=experiment_properties.tsv @@ -12,3 +12,4 @@ 17 20 1 very important expertiment \N 2 2009-02-09 12:17:55.058768+01 2009-03-18 10:50:19.475958+01 \N 19 20 5 \N 12 2 2009-02-09 12:17:55.058768+01 2009-03-18 10:50:19.475958+01 \N 18 20 3 2009-02-09 00:00:00 +0100 \N 2 2009-02-09 12:17:55.058768+01 2009-03-18 10:50:19.475958+01 \N +20 22 1 A simple experiment \N 2 2008-11-05 09:22:37.246+01 2009-03-18 10:50:19.475958+01 \N diff --git a/openbis/sourceTest/sql/postgresql/078/040=sample_relationships.tsv b/openbis/sourceTest/sql/postgresql/078/040=sample_relationships.tsv index a3f5c810823..35c04b997e5 100644 --- a/openbis/sourceTest/sql/postgresql/078/040=sample_relationships.tsv +++ b/openbis/sourceTest/sql/postgresql/078/040=sample_relationships.tsv @@ -3,7 +3,7 @@ 7 979 1 989 16 4 1 977 26 1025 1 1030 -12 983 1 992 +12 1053 1 992 23 1020 1 1025 5 979 1 987 9 982 1 990 @@ -22,7 +22,7 @@ 1 325 1 979 4 979 1 986 8 977 1 982 -11 977 1 983 +11 977 1 1053 19 1008 1 1020 27 1026 1 1031 40 994 2 1029 diff --git a/openbis/sourceTest/sql/postgresql/078/043=samples_all.tsv b/openbis/sourceTest/sql/postgresql/078/043=samples_all.tsv index 2ce11b55e93..0305264c2ed 100644 --- a/openbis/sourceTest/sql/postgresql/078/043=samples_all.tsv +++ b/openbis/sourceTest/sql/postgresql/078/043=samples_all.tsv @@ -975,7 +975,7 @@ 990 3VRP1A 4 2008-11-05 09:21:47.449+01 2 1 \N 1 \N 2009-03-18 10:50:19.475958+01 \N 200811050947449-984 991 3VRP1B 4 2008-11-05 09:21:47.449+01 2 1 \N 1 \N 2009-03-18 10:50:19.475958+01 \N 200811050947449-985 983 3VCP2 3 2008-11-05 09:21:46.559+01 2 1 \N 1 \N 2009-03-18 10:50:19.475958+01 \N 200811050946559-986 -992 3VRP2 4 2008-11-05 09:21:47.449+01 2 1 \N 1 \N 2009-03-18 10:50:19.475958+01 \N 200811050947449-987 +992 3VRP2 4 2008-11-05 09:21:47.449+01 2 \N \N 1 \N 2009-03-18 10:50:19.475958+01 \N 200811050947449-987 984 3VCP3 3 2008-11-05 09:21:46.559+01 2 2 \N 1 \N 2009-03-18 10:50:19.475958+01 2 200811050946559-988 993 3VRP3T 4 2008-11-05 09:21:47.449+01 2 2 \N 1 \N 2009-03-18 10:50:19.475958+01 \N 200811050947449-989 985 3VCP4 3 2008-11-05 09:21:46.559+01 2 2 \N 1 \N 2009-03-18 10:50:19.475958+01 2 200811050946559-990 @@ -1021,3 +1021,4 @@ 1050 PLATE_WELLSEARCH 3 2009-02-09 12:09:50.077973+01 2 \N \N 1 \N 2009-08-18 17:54:36.929+02 21 200902091250077-1050 1051 WELL-A01 6 2009-02-09 12:09:50.077973+01 2 \N \N 1 1050 2009-08-18 17:54:36.929+02 21 200902091250077-1051 1052 WELL-A02 6 2009-02-09 12:09:50.077973+01 2 \N \N 1 1050 2009-08-18 17:54:36.929+02 21 200902091250077-1052 +1053 3VCP2-NEW 3 2008-11-05 09:21:46.559+01 2 \N \N 1 \N 2009-03-18 10:50:19.475958+01 \N 201108050946559-986 \ No newline at end of file -- GitLab