From 1c958612233cfed163939ac2bdc1b00ea7cc8f7b Mon Sep 17 00:00:00 2001 From: cramakri <cramakri> Date: Tue, 13 Sep 2011 20:15:32 +0000 Subject: [PATCH] LMS-2436 Implemented test SVN: 22927 --- .../AbstractJythonDataSetHandlerTest.java | 19 +++++++++++++++++++ .../JythonTopLevelDataSetRegistratorTest.java | 1 + .../registrator/dynamic-query-failure-test.py | 4 ++++ 3 files changed, 24 insertions(+) diff --git a/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/registrator/AbstractJythonDataSetHandlerTest.java b/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/registrator/AbstractJythonDataSetHandlerTest.java index 89db4e3fc46..44047956024 100644 --- a/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/registrator/AbstractJythonDataSetHandlerTest.java +++ b/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/registrator/AbstractJythonDataSetHandlerTest.java @@ -50,6 +50,7 @@ import ch.systemsx.cisd.etlserver.ITypeExtractor; import ch.systemsx.cisd.etlserver.ThreadParameters; import ch.systemsx.cisd.etlserver.TopLevelDataSetRegistratorGlobalState; import ch.systemsx.cisd.etlserver.registrator.JythonTopLevelDataSetHandler.JythonDataSetRegistrationService; +import ch.systemsx.cisd.etlserver.registrator.api.v1.SecondaryTransactionFailure; import ch.systemsx.cisd.etlserver.registrator.api.v1.impl.DataSetRegistrationTransaction; import ch.systemsx.cisd.etlserver.validation.IDataSetValidator; import ch.systemsx.cisd.openbis.dss.generic.shared.IEncapsulatedOpenBISService; @@ -347,6 +348,8 @@ public abstract class AbstractJythonDataSetHandlerTest extends AbstractFileSyste protected boolean didCommitTransactionFunctionRunHappen = false; + protected boolean didSecondaryTransactionErrorNotificationHappen = false; + public TestingDataSetHandler(TopLevelDataSetRegistratorGlobalState globalState, boolean shouldRegistrationFail, boolean shouldReThrowRollbackException) { @@ -459,6 +462,22 @@ public abstract class AbstractJythonDataSetHandlerTest extends AbstractFileSyste interpreter.get("didTransactionCommitHappen", Boolean.class); } + @Override + public void didEncounterSecondaryTransactionErrors( + DataSetRegistrationService<DataSetInformation> service, + DataSetRegistrationTransaction<DataSetInformation> transaction, + List<SecondaryTransactionFailure> secondaryErrors) + { + super.didEncounterSecondaryTransactionErrors(service, transaction, secondaryErrors); + + PythonInterpreter interpreter = + ((JythonDataSetRegistrationService<DataSetInformation>) service) + .getInterpreter(); + didSecondaryTransactionErrorNotificationHappen = + interpreter + .get("didSecondaryTransactionErrorNotificationHappen", Boolean.class); + } + @Override protected JythonDataSetRegistrationService<DataSetInformation> createJythonDataSetRegistrationService( File aDataSetFile, DataSetInformation userProvidedDataSetInformationOrNull, diff --git a/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/registrator/JythonTopLevelDataSetRegistratorTest.java b/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/registrator/JythonTopLevelDataSetRegistratorTest.java index 233845f2c9d..f924f70ae05 100644 --- a/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/registrator/JythonTopLevelDataSetRegistratorTest.java +++ b/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/registrator/JythonTopLevelDataSetRegistratorTest.java @@ -796,6 +796,7 @@ public class JythonTopLevelDataSetRegistratorTest extends AbstractJythonDataSetH TestingDataSetHandler theHandler = (TestingDataSetHandler) handler; assertFalse(didServiceRollbackHappen); assertFalse(theHandler.didTransactionRollbackHappen); + assertTrue(theHandler.didSecondaryTransactionErrorNotificationHappen); context.assertIsSatisfied(); } diff --git a/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/registrator/dynamic-query-failure-test.py b/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/registrator/dynamic-query-failure-test.py index 2e52815bdc0..8b08879e2d0 100644 --- a/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/registrator/dynamic-query-failure-test.py +++ b/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/registrator/dynamic-query-failure-test.py @@ -1,5 +1,9 @@ import sys +def did_encounter_secondary_transaction_errors(service, transaction, errors): + global didSecondaryTransactionErrorNotificationHappen + didSecondaryTransactionErrorNotificationHappen = True + # Execute a query tr = service.transaction() query = tr.getDatabaseQuery("path-info-db") -- GitLab