This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository tutti. See https://gitlab.nuiton.org/codelutin/tutti.git commit decdb305f09c6075aaac1cfdeb1c79bf1186ba15 Author: Tony CHEMIT <chemit@codelutin.com> Date: Tue Jul 5 12:46:04 2016 +0200 Test du moteur de synchronisation --- .../UnidirectionalSynchronizeReferentialTest.java | 36 ++++++++++++++++++++- .../java/fr/ird/observe/test/DatabaseName.java | 3 +- ...taForTestUnidirectionalReferentialSyncho.sql.gz | Bin 0 -> 441281 bytes 3 files changed, 37 insertions(+), 2 deletions(-) diff --git a/observe-services-topia/src/test/java/fr/ird/observe/services/service/actions/synchro/UnidirectionalSynchronizeReferentialTest.java b/observe-services-topia/src/test/java/fr/ird/observe/services/service/actions/synchro/UnidirectionalSynchronizeReferentialTest.java index b9b9e60..d81e72c 100644 --- a/observe-services-topia/src/test/java/fr/ird/observe/services/service/actions/synchro/UnidirectionalSynchronizeReferentialTest.java +++ b/observe-services-topia/src/test/java/fr/ird/observe/services/service/actions/synchro/UnidirectionalSynchronizeReferentialTest.java @@ -1,7 +1,9 @@ package fr.ird.observe.services.service.actions.synchro; +import com.google.common.collect.ImmutableMap; import fr.ird.observe.services.ApplicationContextResource; import fr.ird.observe.services.DataSourceResource; +import fr.ird.observe.services.dto.referential.ReferentialDto; import fr.ird.observe.services.service.AbstractServiceTopiaTest; import fr.ird.observe.test.DatabaseName; import fr.ird.observe.test.ObserveFixtures; @@ -37,7 +39,7 @@ public class UnidirectionalSynchronizeReferentialTest extends AbstractServiceTop UnidirectionalReferentialSynchronizeRemoteService remoteService = dataSourceResourceCentral.newService(UnidirectionalReferentialSynchronizeRemoteService.class); referentialSynchronizeEngine = new UnidirectionalReferentialSynchronizeEngine(localService, remoteService); } - + @DatabaseNameConfiguration(DatabaseName.empty_h2) @CopyDatabaseConfiguration @DatabaseNameConfiguration(value = DatabaseName.dataForTestSeine, classifier = DatabaseClassifier.CENTRAL) @@ -81,4 +83,36 @@ public class UnidirectionalSynchronizeReferentialTest extends AbstractServiceTop }); } + + @DatabaseNameConfiguration(DatabaseName.dataForTestSeine) + @CopyDatabaseConfiguration + @DatabaseNameConfiguration(value = DatabaseName.dataForTestUnidirectionalReferentialSyncho, classifier = DatabaseClassifier.CENTRAL) + @DatabaseVersionConfiguration(value = ObserveFixtures.DEFAULT_VERSION, classifier = DatabaseClassifier.CENTRAL) + @Test + public void testSynchronizeWithAllChanges() { + + referentialSynchronizeEngine.run(new UnidirectionalReferentialSynchronizeEngine.Callback() { + + @Override + public <R extends ReferentialDto> Map<String, String> askUserToReplaceRemovedReferentials(UnidirectionalReferentialSynchronizeEngine.CallbackRequest<R> request) { + String referentialName = request.getReferentialName(); + switch (referentialName) { + case "Person": + return ImmutableMap.<String, String>builder().put("fr.ird.observe.entities.referentiel.Person#1355399844272#0.32586441962131485", "fr.ird.observe.entities.referentiel.Person#1429515754659#0.322074382333085").build(); + } + throw new IllegalStateException(); + } + + @Override + public <R extends ReferentialDto> Map<String, String> askUserToReplaceDisabledReferentials(UnidirectionalReferentialSynchronizeEngine.CallbackRequest<R> request) { + String referentialName = request.getReferentialName(); + switch (referentialName) { + case "Vessel": + return ImmutableMap.<String, String>builder().put("fr.ird.observe.entities.referentiel.Vessel#1429515781110#0.833177504362538", "fr.ird.observe.entities.referentiel.Vessel#1429515780436#0.000696399947628379").build(); + } + throw new IllegalStateException(); + } + + }); + } } diff --git a/observe-test-data/src/main/java/fr/ird/observe/test/DatabaseName.java b/observe-test-data/src/main/java/fr/ird/observe/test/DatabaseName.java index 4e865a8..568d3a5 100644 --- a/observe-test-data/src/main/java/fr/ird/observe/test/DatabaseName.java +++ b/observe-test-data/src/main/java/fr/ird/observe/test/DatabaseName.java @@ -11,5 +11,6 @@ public enum DatabaseName { referentiel, dataForTestLongline, dataSourceTest, - dataForTestSeine + dataForTestSeine, + dataForTestUnidirectionalReferentialSyncho } diff --git a/observe-test-data/src/main/resources/db/4.903/dataForTestUnidirectionalReferentialSyncho.sql.gz b/observe-test-data/src/main/resources/db/4.903/dataForTestUnidirectionalReferentialSyncho.sql.gz new file mode 100644 index 0000000..1ab852d Binary files /dev/null and b/observe-test-data/src/main/resources/db/4.903/dataForTestUnidirectionalReferentialSyncho.sql.gz differ -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.