From 2c0633ebb11d3b3b8ef5e92b60d5822f1d79ad4e Mon Sep 17 00:00:00 2001
From: felmer <felmer>
Date: Tue, 7 Apr 2015 10:13:15 +0000
Subject: [PATCH] SSDM-1621: Bug caused by last check-in fixed.
 GenericServerDatabaseTest.testClearingExperiment removed.

SVN: 33791
---
 .../server/business/bo/DataSetTable.java      |  2 +-
 .../server/GenericServerDatabaseTest.java     | 19 +------------------
 2 files changed, 2 insertions(+), 19 deletions(-)

diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/business/bo/DataSetTable.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/business/bo/DataSetTable.java
index 1ba2d799144..353c68e3d01 100644
--- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/business/bo/DataSetTable.java
+++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/business/bo/DataSetTable.java
@@ -1123,7 +1123,7 @@ public final class DataSetTable extends AbstractDataSetBusinessObject implements
         if (details.isSampleUpdateRequested() && dataSetUpdates.getSampleIdentifierOrNull() != null)
         {
             updateSample(dataSet, dataSetUpdates.getSampleIdentifierOrNull());
-        } else
+        } else if (dataSetUpdates.getExperimentIdentifierOrNull() != null)
         {
             updateExperiment(dataSet, dataSetUpdates.getExperimentIdentifierOrNull());
             dataSet.setSample(null);
diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/plugin/generic/server/GenericServerDatabaseTest.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/plugin/generic/server/GenericServerDatabaseTest.java
index a96e957d5ac..671eb050cc6 100644
--- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/plugin/generic/server/GenericServerDatabaseTest.java
+++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/plugin/generic/server/GenericServerDatabaseTest.java
@@ -167,6 +167,7 @@ public class GenericServerDatabaseTest extends AbstractDAOTest
         NewDataSet newDataset = new NewDataSet();
         newDataset.setCode(dataset.getCode());
         newDataset.setSampleIdentifierOrNull(null);
+        newDataset.setExperimentIdentifier(dataset.getExperiment().getIdentifier());
 
         DataSetBatchUpdateDetails updateDetails = new DataSetBatchUpdateDetails();
         updateDetails.setSampleUpdateRequested(true);
@@ -177,24 +178,6 @@ public class GenericServerDatabaseTest extends AbstractDAOTest
         Assert.assertEquals(TEST_EXPERIMENT_PERMID, dataset.getExperiment().getPermId());
     }
 
-    @Test(expectedExceptions = AssertionError.class)
-    public void testClearingExperimentShouldNotBeAllowed()
-    {
-        DataPE dataset = findData(TEST_EXPERIMENT_CONTAINED_DATA_SET_CODE);
-
-        Assert.assertEquals(TEST_EXPERIMENT_SAMPLE_PERMID, dataset.tryGetSample().getPermId());
-        Assert.assertEquals(TEST_EXPERIMENT_PERMID, dataset.getExperiment().getPermId());
-
-        NewDataSet newDataset = new NewDataSet();
-        newDataset.setCode(dataset.getCode());
-        newDataset.setExperimentIdentifier(null);
-
-        DataSetBatchUpdateDetails updateDetails = new DataSetBatchUpdateDetails();
-        updateDetails.setExperimentUpdateRequested(true);
-
-        update(dataset, newDataset, updateDetails);
-    }
-
     private void update(DataPE data, NewDataSet newDataset, DataSetBatchUpdateDetails updateDetails)
     {
         List<NewDataSet> newDatasets = new ArrayList<NewDataSet>();
-- 
GitLab