diff --git a/java/com.sap.sailing.server.replication.test/src/com/sap/sailing/server/replication/test/AbstractLogReplicationTest.java b/java/com.sap.sailing.server.replication.test/src/com/sap/sailing/server/replication/test/AbstractLogReplicationTest.java index 44d0a431ec4..5d9524cd142 100644 --- a/java/com.sap.sailing.server.replication.test/src/com/sap/sailing/server/replication/test/AbstractLogReplicationTest.java +++ b/java/com.sap.sailing.server.replication.test/src/com/sap/sailing/server/replication/test/AbstractLogReplicationTest.java @@ -35,8 +35,9 @@ public abstract class AbstractLogReplicationTest { - protected MongoDBService mongoDBService; - protected MongoObjectFactory mongoObjectFactory; +public abstract class AbstractServerReplicationTest extends com.sap.sse.replication.testsupport.AbstractServerWithSingleServiceReplicationTest { + protected ServerReplicationTestSetUp testSetUp; - /** - * Drops the test DB, if dropDB is true and requests the DB to start. - */ - @Override - protected void persistenceSetUp(boolean dropDB) { - mongoDBService = MongoDBService.INSTANCE; - if (dropDB) { - mongoDBService.getDB().dropDatabase(); - } - mongoObjectFactory = PersistenceFactory.INSTANCE.getMongoObjectFactory(mongoDBService); + public AbstractServerReplicationTest() { + super(new ServerReplicationTestSetUp()); + testSetUp = (ServerReplicationTestSetUp) super.testSetUp; } - protected RacingEventServiceImpl createNewMaster() { - return new RacingEventServiceImpl(PersistenceFactory.INSTANCE.getDomainObjectFactory(mongoDBService, - DomainFactory.INSTANCE), mongoObjectFactory, MediaDBFactory.INSTANCE.getMediaDB(mongoDBService), - EmptyWindStore.INSTANCE, EmptyGPSFixStore.INSTANCE); - } - - protected RacingEventServiceImpl createNewReplica() { - return new RacingEventServiceImpl(PersistenceFactory.INSTANCE.getDomainObjectFactory(mongoDBService, - // replica gets its own base DomainFactory: - new DomainFactoryImpl()), mongoObjectFactory, MediaDBFactory.INSTANCE.getMediaDB(mongoDBService), - EmptyWindStore.INSTANCE, EmptyGPSFixStore.INSTANCE); + protected static class ServerReplicationTestSetUp extends com.sap.sse.replication.testsupport.AbstractServerReplicationTestSetUp { + protected MongoDBService mongoDBService; + protected MongoObjectFactory mongoObjectFactory; + + /** + * Drops the test DB, if dropDB is true and requests the DB to start. + */ + @Override + protected void persistenceSetUp(boolean dropDB) { + mongoDBService = MongoDBService.INSTANCE; + if (dropDB) { + mongoDBService.getDB().dropDatabase(); + } + mongoObjectFactory = PersistenceFactory.INSTANCE.getMongoObjectFactory(mongoDBService); + } + + @Override + public RacingEventServiceImpl createNewMaster() { + return new RacingEventServiceImpl(PersistenceFactory.INSTANCE.getDomainObjectFactory(mongoDBService, + DomainFactory.INSTANCE), mongoObjectFactory, MediaDBFactory.INSTANCE.getMediaDB(mongoDBService), + EmptyWindStore.INSTANCE, EmptyGPSFixStore.INSTANCE); + } + + @Override + public RacingEventServiceImpl createNewReplica() { + return new RacingEventServiceImpl(PersistenceFactory.INSTANCE.getDomainObjectFactory(mongoDBService, + // replica gets its own base DomainFactory: + new DomainFactoryImpl()), mongoObjectFactory, MediaDBFactory.INSTANCE.getMediaDB(mongoDBService), + EmptyWindStore.INSTANCE, EmptyGPSFixStore.INSTANCE); + } } } diff --git a/java/com.sap.sailing.server.replication.test/src/com/sap/sailing/server/replication/test/ConnectionResetAndReconnectTest.java b/java/com.sap.sailing.server.replication.test/src/com/sap/sailing/server/replication/test/ConnectionResetAndReconnectTest.java index 30ce408fa99..65da3647ea9 100644 --- a/java/com.sap.sailing.server.replication.test/src/com/sap/sailing/server/replication/test/ConnectionResetAndReconnectTest.java +++ b/java/com.sap.sailing.server.replication.test/src/com/sap/sailing/server/replication/test/ConnectionResetAndReconnectTest.java @@ -81,16 +81,20 @@ public class ConnectionResetAndReconnectTest extends AbstractServerReplicationTe } - @Before - @Override - public void setUp() throws Exception { - try { - Pair, ReplicationMasterDescriptor> result = basicSetUp(/* dropDB */ true, - /* master=null means create a new one */ null, /* replica=null means create a new one */null); - masterDescriptor = MasterReplicationDescriptorMock.from(result.getB()); - } catch (Exception e) { - e.printStackTrace(); - tearDown(); + protected static class ServerReplicationTestSetUp extends + com.sap.sailing.server.replication.test.AbstractServerReplicationTest.ServerReplicationTestSetUp { + @Before + @Override + public void setUp() throws Exception { + try { + Pair, ReplicationMasterDescriptor> result = basicSetUp( + /* dropDB */true, + /* master=null means create a new one */null, /* replica=null means create a new one */null); + masterDescriptor = MasterReplicationDescriptorMock.from(result.getB()); + } catch (Exception e) { + e.printStackTrace(); + tearDown(); + } } } @@ -102,7 +106,7 @@ public class ConnectionResetAndReconnectTest extends AbstractServerReplicationTe /* until here both instances should have the same in-memory state. * now lets add an event on master and stop the messaging queue. */ stopMessagingExchange(); - replicaReplicator.startToReplicateFrom(masterDescriptor); + testSetUp.getReplicaReplicator().startToReplicateFrom(testSetUp.getMasterDescriptor()); Event event = addEventOnMaster(); Thread.sleep(1000); // wait for master queue to get filled assertNull(replica.getEvent(event.getId())); diff --git a/java/com.sap.sailing.server.replication.test/src/com/sap/sailing/server/replication/test/DelayedLeaderboardCorrectionsReplicationTest.java b/java/com.sap.sailing.server.replication.test/src/com/sap/sailing/server/replication/test/DelayedLeaderboardCorrectionsReplicationTest.java index c28f2ea50e6..9bb2e1db068 100755 --- a/java/com.sap.sailing.server.replication.test/src/com/sap/sailing/server/replication/test/DelayedLeaderboardCorrectionsReplicationTest.java +++ b/java/com.sap.sailing.server.replication.test/src/com/sap/sailing/server/replication/test/DelayedLeaderboardCorrectionsReplicationTest.java @@ -46,6 +46,7 @@ import com.sap.sse.common.impl.MillisecondsTimePoint; import com.sap.sse.mongodb.MongoDBService; import com.sap.sse.replication.ReplicationMasterDescriptor; import com.sap.sse.replication.ReplicationService; +import com.sap.sse.replication.testsupport.AbstractServerReplicationTestSetUp.ReplicationServiceTestImpl; public class DelayedLeaderboardCorrectionsReplicationTest extends AbstractServerReplicationTest { private static final Logger logger = Logger.getLogger(DelayedLeaderboardCorrectionsReplicationTest.class.getName()); @@ -115,7 +116,7 @@ public class DelayedLeaderboardCorrectionsReplicationTest extends AbstractServer masterLeaderboardReloaded.getRaceColumnByName(Q2), MillisecondsTimePoint.now())); // replicate the re-loaded environment - Pair, ReplicationMasterDescriptor> descriptors = basicSetUp( + Pair, ReplicationMasterDescriptor> descriptors = basicSetUp( /* dropDB */false, master, replica); replicaReplicator = descriptors.getA(); masterDescriptor = descriptors.getB(); diff --git a/java/com.sap.sailing.server.replication.test/src/com/sap/sailing/server/replication/test/InitialLoadReplicationObjectIdentityTest.java b/java/com.sap.sailing.server.replication.test/src/com/sap/sailing/server/replication/test/InitialLoadReplicationObjectIdentityTest.java index 862220bc514..a2b082373bd 100755 --- a/java/com.sap.sailing.server.replication.test/src/com/sap/sailing/server/replication/test/InitialLoadReplicationObjectIdentityTest.java +++ b/java/com.sap.sailing.server.replication.test/src/com/sap/sailing/server/replication/test/InitialLoadReplicationObjectIdentityTest.java @@ -73,9 +73,10 @@ import com.sap.sse.common.impl.MillisecondsDurationImpl; import com.sap.sse.common.impl.MillisecondsTimePoint; import com.sap.sse.replication.ReplicationMasterDescriptor; import com.sap.sse.replication.impl.ReplicationReceiver; +import com.sap.sse.replication.testsupport.AbstractServerReplicationTestSetUp.ReplicationServiceTestImpl; public class InitialLoadReplicationObjectIdentityTest extends AbstractServerReplicationTest { - private Pair, ReplicationMasterDescriptor> replicationDescriptorPair; + private Pair, ReplicationMasterDescriptor> replicationDescriptorPair; /** * Drops the test DB. Sets up master and replica, starts the JMS message broker and registers the replica with the master. @@ -84,10 +85,10 @@ public class InitialLoadReplicationObjectIdentityTest extends AbstractServerRepl @Override public void setUp() throws Exception { persistenceSetUp(/* dropDB */ true); - this.master = new RacingEventServiceImpl(PersistenceFactory.INSTANCE.getDomainObjectFactory(mongoDBService, DomainFactory.INSTANCE), PersistenceFactory.INSTANCE - .getMongoObjectFactory(mongoDBService), MediaDBFactory.INSTANCE.getMediaDB(mongoDBService), EmptyWindStore.INSTANCE, EmptyGPSFixStore.INSTANCE); - this.replica = new RacingEventServiceImpl(PersistenceFactory.INSTANCE.getDomainObjectFactory(mongoDBService, DomainFactory.INSTANCE), PersistenceFactory.INSTANCE - .getMongoObjectFactory(mongoDBService), MediaDBFactory.INSTANCE.getMediaDB(mongoDBService), EmptyWindStore.INSTANCE, EmptyGPSFixStore.INSTANCE); + this.master = new RacingEventServiceImpl(PersistenceFactory.INSTANCE.getDomainObjectFactory(testSetUp.mongoDBService, DomainFactory.INSTANCE), PersistenceFactory.INSTANCE + .getMongoObjectFactory(testSetUp.mongoDBService), MediaDBFactory.INSTANCE.getMediaDB(testSetUp.mongoDBService), EmptyWindStore.INSTANCE, EmptyGPSFixStore.INSTANCE); + this.replica = new RacingEventServiceImpl(PersistenceFactory.INSTANCE.getDomainObjectFactory(testSetUp.mongoDBService, DomainFactory.INSTANCE), PersistenceFactory.INSTANCE + .getMongoObjectFactory(testSetUp.mongoDBService), MediaDBFactory.INSTANCE.getMediaDB(testSetUp.mongoDBService), EmptyWindStore.INSTANCE, EmptyGPSFixStore.INSTANCE); } private void performReplicationSetup() throws Exception { diff --git a/java/com.sap.sailing.server.replication.test/src/com/sap/sailing/server/replication/test/PrematureOperationReceiptTest.java b/java/com.sap.sailing.server.replication.test/src/com/sap/sailing/server/replication/test/PrematureOperationReceiptTest.java index 6e640221b30..325e88864d0 100755 --- a/java/com.sap.sailing.server.replication.test/src/com/sap/sailing/server/replication/test/PrematureOperationReceiptTest.java +++ b/java/com.sap.sailing.server.replication.test/src/com/sap/sailing/server/replication/test/PrematureOperationReceiptTest.java @@ -15,6 +15,7 @@ import com.sap.sailing.server.operationaltransformation.CreateFlexibleLeaderboar import com.sap.sse.common.Util.Pair; import com.sap.sse.replication.ReplicationMasterDescriptor; import com.sap.sse.replication.impl.ReplicationReceiver; +import com.sap.sse.replication.testsupport.AbstractServerReplicationTestSetUp.ReplicationServiceTestImpl; public class PrematureOperationReceiptTest extends AbstractServerReplicationTest { private ReplicationReceiver replicator; @@ -25,7 +26,7 @@ public class PrematureOperationReceiptTest extends AbstractServerReplicationTest @Before @Override public void setUp() throws Exception { - Pair, ReplicationMasterDescriptor> result = + Pair, ReplicationMasterDescriptor> result = basicSetUp(/* dropDB */ true, /* master=null means create a new one */ null, /* replica=null means create a new one */ null); replicator = replicaReplicator.startToReplicateFromButDontYetFetchInitialLoad(result.getB(), /* startReplicatorSuspended */ true); } diff --git a/java/com.sap.sailing.server.replication.test/src/com/sap/sailing/server/replication/test/RaceLogReplicationTest.java b/java/com.sap.sailing.server.replication.test/src/com/sap/sailing/server/replication/test/RaceLogReplicationTest.java index 9660d8b92f3..791aaa82e29 100755 --- a/java/com.sap.sailing.server.replication.test/src/com/sap/sailing/server/replication/test/RaceLogReplicationTest.java +++ b/java/com.sap.sailing.server.replication.test/src/com/sap/sailing/server/replication/test/RaceLogReplicationTest.java @@ -47,10 +47,11 @@ import com.sap.sse.common.Util; import com.sap.sse.common.Util.Pair; import com.sap.sse.common.impl.MillisecondsTimePoint; import com.sap.sse.replication.ReplicationMasterDescriptor; +import com.sap.sse.replication.testsupport.AbstractServerReplicationTestSetUp.ReplicationServiceTestImpl; public class RaceLogReplicationTest extends AbstractLogReplicationTest { - private Pair, ReplicationMasterDescriptor> replicationDescriptorPair; + private Pair, ReplicationMasterDescriptor> replicationDescriptorPair; private RaceLogEvent raceLogEvent; private RaceLogEvent anotherRaceLogEvent; @@ -217,7 +218,7 @@ public class RaceLogReplicationTest extends AbstractLogReplicationTest { - private Pair, ReplicationMasterDescriptor> replicationDescriptorPair; + private Pair, ReplicationMasterDescriptor> replicationDescriptorPair; private RegattaLogEvent regattaLogEvent; // private RegattaLogEvent anotherRegattaLogEvent; diff --git a/java/com.sap.sse.filestorage.test/src/com/sap/sse/filestorage/replication/test/AbstractFileStorageManagementServiceReplicationTest.java b/java/com.sap.sse.filestorage.test/src/com/sap/sse/filestorage/replication/test/AbstractFileStorageManagementServiceReplicationTest.java index be1aba6fc9a..b8e02563ed2 100755 --- a/java/com.sap.sse.filestorage.test/src/com/sap/sse/filestorage/replication/test/AbstractFileStorageManagementServiceReplicationTest.java +++ b/java/com.sap.sse.filestorage.test/src/com/sap/sse/filestorage/replication/test/AbstractFileStorageManagementServiceReplicationTest.java @@ -10,43 +10,49 @@ import com.sap.sse.filestorage.impl.EmptyFileStorageServicePropertyStoreImpl; import com.sap.sse.filestorage.impl.FileStorageManagementServiceImpl; import com.sap.sse.filestorage.testsupport.DummyFileStorageService; import com.sap.sse.mongodb.MongoDBService; -import com.sap.sse.replication.testsupport.AbstractServerReplicationTest; +import com.sap.sse.replication.testsupport.AbstractServerWithSingleServiceReplicationTest; public abstract class AbstractFileStorageManagementServiceReplicationTest extends - AbstractServerReplicationTest { - private MongoDBService mongoDBService; + AbstractServerWithSingleServiceReplicationTest { + public AbstractFileStorageManagementServiceReplicationTest() { + super(new ServerReplicationTestSetUp()); + } - @Override - protected void persistenceSetUp(boolean dropDB) { - mongoDBService = MongoDBService.INSTANCE; - if (dropDB) { + private static class ServerReplicationTestSetUp extends com.sap.sse.replication.testsupport.AbstractServerReplicationTestSetUp { + private MongoDBService mongoDBService; + + @Override + protected void persistenceSetUp(boolean dropDB) { + mongoDBService = MongoDBService.INSTANCE; + if (dropDB) { + mongoDBService.getDB().dropDatabase(); + } + } + + protected FileStorageManagementServiceImpl createNewService() { + return new FileStorageManagementServiceImpl( + new SingleTypeBasedServiceFinderImpl<>(new DummyFileStorageService(), + DummyFileStorageService.NAME), EmptyFileStorageServicePropertyStoreImpl.INSTANCE); + } + + @Override + public FileStorageManagementServiceImpl createNewMaster() throws MalformedURLException, IOException, + InterruptedException { + FileStorageManagementServiceImpl result = createNewService(); + FileStorageService serviceOnMaster = result.getAvailableFileStorageServices()[0]; + result.setActiveFileStorageService(serviceOnMaster); + result.setFileStorageServiceProperty(serviceOnMaster, DummyFileStorageService.PROPERTY_NAME, "123"); + return result; + } + + @Override + public FileStorageManagementServiceImpl createNewReplica() { + return createNewService(); + } + + @Override + protected void persistenceTearDown() { mongoDBService.getDB().dropDatabase(); } } - - protected FileStorageManagementServiceImpl createNewService() { - return new FileStorageManagementServiceImpl( - new SingleTypeBasedServiceFinderImpl<>(new DummyFileStorageService(), - DummyFileStorageService.NAME), EmptyFileStorageServicePropertyStoreImpl.INSTANCE); - } - - @Override - protected FileStorageManagementServiceImpl createNewMaster() throws MalformedURLException, IOException, - InterruptedException { - FileStorageManagementServiceImpl result = createNewService(); - FileStorageService serviceOnMaster = result.getAvailableFileStorageServices()[0]; - result.setActiveFileStorageService(serviceOnMaster); - result.setFileStorageServiceProperty(serviceOnMaster, DummyFileStorageService.PROPERTY_NAME, "123"); - return result; - } - - @Override - protected FileStorageManagementServiceImpl createNewReplica() { - return createNewService(); - } - - @Override - protected void persistenceTearDown() { - mongoDBService.getDB().dropDatabase(); - } } diff --git a/java/com.sap.sse.replication.testsupport/src/com/sap/sse/replication/testsupport/AbstractServerReplicationTest.java b/java/com.sap.sse.replication.testsupport/src/com/sap/sse/replication/testsupport/AbstractServerReplicationTestSetUp.java old mode 100755 new mode 100644 similarity index 92% rename from java/com.sap.sse.replication.testsupport/src/com/sap/sse/replication/testsupport/AbstractServerReplicationTest.java rename to java/com.sap.sse.replication.testsupport/src/com/sap/sse/replication/testsupport/AbstractServerReplicationTestSetUp.java index 001315e97a8..2145e775726 --- a/java/com.sap.sse.replication.testsupport/src/com/sap/sse/replication/testsupport/AbstractServerReplicationTest.java +++ b/java/com.sap.sse.replication.testsupport/src/com/sap/sse/replication/testsupport/AbstractServerReplicationTestSetUp.java @@ -22,8 +22,6 @@ import java.util.logging.Level; import java.util.logging.Logger; import java.util.zip.GZIPOutputStream; -import org.junit.After; -import org.junit.Before; import org.junit.Rule; import org.junit.rules.Timeout; @@ -42,10 +40,12 @@ import com.sap.sse.replication.impl.ReplicationReceiver; import com.sap.sse.replication.impl.ReplicationServiceImpl; import com.sap.sse.replication.impl.SingletonReplicablesProvider; -public abstract class AbstractServerReplicationTest, ReplicableImpl extends ReplicableInterface> { - private static final Logger logger = Logger.getLogger(AbstractServerReplicationTest.class.getName()); +public abstract class AbstractServerReplicationTestSetUp, ReplicableImpl extends ReplicableInterface> { + private static final Logger logger = Logger.getLogger(AbstractServerReplicationTestSetUp.class.getName()); - protected static final int SERVLET_PORT = 9990; + protected static final int DEFAULT_SERVLET_PORT = 9990; + + private final int servletPort; protected ReplicableImpl replica; protected ReplicableImpl master; protected ReplicationServiceTestImpl replicaReplicator; @@ -53,6 +53,14 @@ public abstract class AbstractServerReplicationTest, ReplicationMasterDescriptor> result = basicSetUp( @@ -120,9 +127,9 @@ public abstract class AbstractServerReplicationTest replicaReplicator = new ReplicationServiceTestImpl(exchangeName, exchangeHost, rim, replicaDescriptor, - this.replica, this.master, masterReplicator, masterDescriptor); + this.replica, this.master, masterReplicator, masterDescriptor, servletPort); Pair, ReplicationMasterDescriptor> result = new Pair<>(replicaReplicator, masterDescriptor); logger.info("starting initial load transmission servlet for "+getClass().getName()); initialLoadTestServerThread = replicaReplicator.startInitialLoadTransmissionServlet(); @@ -136,16 +143,15 @@ public abstract class AbstractServerReplicationTest getReplicaReplicator() { + return replicaReplicator; + } + + public ReplicationMasterDescriptor getMasterDescriptor() { + return masterDescriptor; + } } diff --git a/java/com.sap.sse.replication.testsupport/src/com/sap/sse/replication/testsupport/AbstractServerWithMultipleServicesReplicationTest.java b/java/com.sap.sse.replication.testsupport/src/com/sap/sse/replication/testsupport/AbstractServerWithMultipleServicesReplicationTest.java new file mode 100644 index 00000000000..125c97f6dee --- /dev/null +++ b/java/com.sap.sse.replication.testsupport/src/com/sap/sse/replication/testsupport/AbstractServerWithMultipleServicesReplicationTest.java @@ -0,0 +1,25 @@ +package com.sap.sse.replication.testsupport; + +import java.util.HashSet; +import java.util.Set; + +import org.junit.After; +import org.junit.Before; + +public abstract class AbstractServerWithMultipleServicesReplicationTest { + protected final Set> testSetUps = new HashSet<>(); + + @Before + public void setUp() throws Exception { + for (AbstractServerReplicationTestSetUp testSetUp : testSetUps) { + testSetUp.setUp(); + } + } + + @After + public void tearDown() throws Exception { + for (AbstractServerReplicationTestSetUp testSetUp : testSetUps) { + testSetUp.tearDown(); + } + } +} diff --git a/java/com.sap.sse.replication.testsupport/src/com/sap/sse/replication/testsupport/AbstractServerWithSingleServiceReplicationTest.java b/java/com.sap.sse.replication.testsupport/src/com/sap/sse/replication/testsupport/AbstractServerWithSingleServiceReplicationTest.java new file mode 100755 index 00000000000..2e20ed3ee1c --- /dev/null +++ b/java/com.sap.sse.replication.testsupport/src/com/sap/sse/replication/testsupport/AbstractServerWithSingleServiceReplicationTest.java @@ -0,0 +1,63 @@ +package com.sap.sse.replication.testsupport; + +import java.io.IOException; + +import org.junit.After; +import org.junit.Before; + +import com.sap.sse.common.Util.Pair; +import com.sap.sse.replication.Replicable; +import com.sap.sse.replication.ReplicationMasterDescriptor; +import com.sap.sse.replication.testsupport.AbstractServerReplicationTestSetUp.ReplicationServiceTestImpl; + +public abstract class AbstractServerWithSingleServiceReplicationTest, ReplicableImpl extends ReplicableInterface> { + protected final AbstractServerReplicationTestSetUp testSetUp; + protected ReplicableImpl replica; + protected ReplicableImpl master; + protected ReplicationServiceTestImpl replicaReplicator; + protected ReplicationMasterDescriptor masterDescriptor; + + + public AbstractServerWithSingleServiceReplicationTest(AbstractServerReplicationTestSetUp testSetUp) { + this.testSetUp = testSetUp; + } + + @Before + public void setUp() throws Exception { + testSetUp.setUp(); + master = testSetUp.getMaster(); + replica = testSetUp.getReplica(); + replicaReplicator = testSetUp.getReplicaReplicator(); + masterDescriptor = testSetUp.getMasterDescriptor(); + } + + protected Pair, ReplicationMasterDescriptor> basicSetUp(boolean dropDB, + ReplicableImpl master, ReplicableImpl replica) throws Exception { + return testSetUp.basicSetUp(dropDB, master, replica); + } + + @After + public void tearDown() throws Exception { + testSetUp.tearDown(); + } + + protected ReplicableImpl createNewMaster() throws Exception { + return testSetUp.createNewMaster(); + } + + protected ReplicableImpl createNewReplica() throws Exception { + return testSetUp.createNewReplica(); + } + + protected void persistenceSetUp(boolean dropDB) { + testSetUp.persistenceSetUp(dropDB); + } + + protected void persistenceTearDown() { + testSetUp.persistenceTearDown(); + } + + public void stopReplicatingToMaster() throws IOException { + testSetUp.stopReplicatingToMaster(); + } +} diff --git a/java/com.sap.sse.security.replication.test/META-INF/MANIFEST.MF b/java/com.sap.sse.security.replication.test/META-INF/MANIFEST.MF index 8945be6f73c..a73b2c7998e 100644 --- a/java/com.sap.sse.security.replication.test/META-INF/MANIFEST.MF +++ b/java/com.sap.sse.security.replication.test/META-INF/MANIFEST.MF @@ -12,4 +12,4 @@ Require-Bundle: org.junit4;bundle-version="4.8.2", com.rabbitmq.client, org.mongodb.mongo-java-driver;bundle-version="2.13.0", com.sap.sse.replication.testsupport, - com.sap.sse.replication.testsupport + com.sap.sse.mail.replication.testsupport diff --git a/java/com.sap.sse.security.replication.test/src/com/sap/sse/security/replication/test/AbstractSecurityReplicationTest.java b/java/com.sap.sse.security.replication.test/src/com/sap/sse/security/replication/test/AbstractSecurityReplicationTest.java index 14eccc103aa..af5d80c108d 100755 --- a/java/com.sap.sse.security.replication.test/src/com/sap/sse/security/replication/test/AbstractSecurityReplicationTest.java +++ b/java/com.sap.sse.security.replication.test/src/com/sap/sse/security/replication/test/AbstractSecurityReplicationTest.java @@ -4,31 +4,37 @@ import java.io.IOException; import java.net.MalformedURLException; import com.sap.sse.mongodb.MongoDBService; -import com.sap.sse.replication.testsupport.AbstractServerReplicationTest; +import com.sap.sse.replication.testsupport.AbstractServerWithSingleServiceReplicationTest; import com.sap.sse.security.SecurityService; import com.sap.sse.security.impl.SecurityServiceImpl; import com.sap.sse.security.userstore.mongodb.UserStoreImpl; -public abstract class AbstractSecurityReplicationTest extends AbstractServerReplicationTest { - private MongoDBService mongoDBService; +public abstract class AbstractSecurityReplicationTest extends AbstractServerWithSingleServiceReplicationTest { + public AbstractSecurityReplicationTest() { + super(new ServerReplicationTestSetUp()); + } - @Override - protected void persistenceSetUp(boolean dropDB) { - mongoDBService = MongoDBService.INSTANCE; - if (dropDB) { - mongoDBService.getDB().dropDatabase(); + private static class ServerReplicationTestSetUp extends com.sap.sse.replication.testsupport.AbstractServerReplicationTestSetUp { + private MongoDBService mongoDBService; + + @Override + protected void persistenceSetUp(boolean dropDB) { + mongoDBService = MongoDBService.INSTANCE; + if (dropDB) { + mongoDBService.getDB().dropDatabase(); + } + } + + @Override + protected SecurityServiceImpl createNewMaster() throws MalformedURLException, IOException, InterruptedException { + SecurityServiceImpl result = new SecurityServiceImpl(new UserStoreImpl()); + result.clearReplicaState(); + return result; + } + + @Override + protected SecurityServiceImpl createNewReplica() { + return new SecurityServiceImpl(new UserStoreImpl()); } } - - @Override - protected SecurityServiceImpl createNewMaster() throws MalformedURLException, IOException, InterruptedException { - SecurityServiceImpl result = new SecurityServiceImpl(new UserStoreImpl()); - result.clearReplicaState(); - return result; - } - - @Override - protected SecurityServiceImpl createNewReplica() { - return new SecurityServiceImpl(new UserStoreImpl()); - } }