diff --git a/java/com.sap.sailing.selenium.test/src/com/sap/sailing/selenium/core/WebDriverWindow.java b/java/com.sap.sailing.selenium.test/src/com/sap/sailing/selenium/core/WebDriverWindow.java index 0994be1acbf..6633e94a4e2 100644 --- a/java/com.sap.sailing.selenium.test/src/com/sap/sailing/selenium/core/WebDriverWindow.java +++ b/java/com.sap.sailing.selenium.test/src/com/sap/sailing/selenium/core/WebDriverWindow.java @@ -32,23 +32,20 @@ public class WebDriverWindow { public void close() { WebDriver driver = switchToWindow(); driver.close(); - this.handle = null; } public WebDriver switchToWindow() { checkForClosed(); - TargetLocator locator = this.driver.switchTo(); - return locator.window(this.handle); } private void checkForClosed() { Set handles = this.driver.getWindowHandles(); - - if(!handles.contains(this.handle)) + if (!handles.contains(this.handle)) { throw new WebDriverException("Window closed or not initialized"); //$NON-NLS-1$ + } } public WebDriver getWebDriver() { diff --git a/java/com.sap.sailing.selenium.test/src/com/sap/sailing/selenium/core/WindowManager.java b/java/com.sap.sailing.selenium.test/src/com/sap/sailing/selenium/core/WindowManager.java index c4607808d70..4a797465f41 100644 --- a/java/com.sap.sailing.selenium.test/src/com/sap/sailing/selenium/core/WindowManager.java +++ b/java/com.sap.sailing.selenium.test/src/com/sap/sailing/selenium/core/WindowManager.java @@ -7,7 +7,12 @@ import java.util.function.Consumer; import java.util.function.Supplier; import org.openqa.selenium.Dimension; +import org.openqa.selenium.JavascriptExecutor; +import org.openqa.selenium.NoSuchSessionException; +import org.openqa.selenium.SessionNotCreatedException; import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebDriverException; +import org.openqa.selenium.support.ui.WebDriverWait; /** *

@@ -41,17 +46,17 @@ public class WindowManager { return this.driver; } + /** + * This is the old, currently unused code superseded by {@link #withExtraWindow(WebDriver, BiConsumer)}. + */ public void withExtraWindow(BiConsumer defaultAndExtraWindow) { // ensures that a default window exists getDefaultWebDriver(); - final WebDriver extraDriver = webDriverFactory.get(); final WebDriverWindow extraWindow = new ManagedWebDriverWindow(extraDriver, extraDriver.getWindowHandle()); - extraWindow.switchToWindow(); setWindowMaximized(extraDriver); defaultWindow.switchToWindow(); - defaultAndExtraWindow.accept(defaultWindow, extraWindow); try { // quit is explicitly not called in a finally block to ensure that both windows are still open @@ -62,6 +67,54 @@ public class WindowManager { // This call may fail depending on the WebDriver being used } } + + /** + * New version of {@link #withExtraWindow(BiConsumer)} that uses the WebDriver passed as parameter and uses + * a single {@link WebDriver} for both windows. + */ + public void withExtraWindow(WebDriver driver, BiConsumer defaultAndExtraWindow) { + String originalWindowHandle = driver.getWindowHandle(); + // Open a new window using JavaScript + ((JavascriptExecutor) driver).executeScript("window.open('about:blank','_blank');"); + // Wait until the new window appears + new WebDriverWait(driver, /* seconds */ 5).until(d -> d.getWindowHandles().size() > 1); + // Identify the new window handle + String extraWindowHandle = driver.getWindowHandles().stream() + .filter(handle -> !handle.equals(originalWindowHandle)) + .findFirst() + .orElseThrow(() -> new RuntimeException("New window did not open")); + final WebDriverWindow defaultWindow = new ManagedWebDriverWindow(driver, originalWindowHandle); + final WebDriverWindow extraWindow = new ManagedWebDriverWindow(driver, extraWindowHandle); + try { + extraWindow.switchToWindow(); + setWindowMaximized(driver); + // Switch back to default window before calling the test logic + defaultWindow.switchToWindow(); + // Run the test logic + defaultAndExtraWindow.accept(defaultWindow, extraWindow); + } finally { + // Close the extra window and switch back to the original + try { + extraWindow.switchToWindow(); + driver.close(); + } catch (Exception ignored) {} + // This call may fail depending on the WebDriver being used + try { + defaultWindow.switchToWindow(); + } catch (Exception ignored) { + // This call may fail depending on the WebDriver being used + } + } + } + + private boolean isDriverAlive(WebDriver driver) { + try { + driver.getWindowHandles(); + return true; + } catch (NoSuchSessionException | SessionNotCreatedException e) { + return false; + } + } private void setWindowMaximized(WebDriver driver) { try { @@ -94,11 +147,14 @@ public class WindowManager { @Override public void close() { allWindows.remove(this); - if (this == defaultWindow) { - defaultWindow = null; - driver = null; + final WebDriver myDriver = driver; + if (isDriverAlive(myDriver)) { + try { + super.close(); + } catch (WebDriverException e) { + // If the window is already closed, we ignore the exception + } } - super.close(); } } } diff --git a/java/com.sap.sailing.selenium.test/src/com/sap/sailing/selenium/test/AbstractSeleniumTest.java b/java/com.sap.sailing.selenium.test/src/com/sap/sailing/selenium/test/AbstractSeleniumTest.java index 22f97dc7a90..f33f84f2cb3 100644 --- a/java/com.sap.sailing.selenium.test/src/com/sap/sailing/selenium/test/AbstractSeleniumTest.java +++ b/java/com.sap.sailing.selenium.test/src/com/sap/sailing/selenium/test/AbstractSeleniumTest.java @@ -13,6 +13,8 @@ import org.json.JSONException; import org.json.JSONObject; import org.json.JSONTokener; import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.TestInstance; +import org.junit.jupiter.api.TestInstance.Lifecycle; import org.openqa.selenium.By; import org.openqa.selenium.Cookie; import org.openqa.selenium.JavascriptExecutor; @@ -38,6 +40,7 @@ import com.sap.sse.common.impl.MillisecondsTimePoint; * D049941 */ @UseSeleniumExtensions +@TestInstance(Lifecycle.PER_METHOD) public abstract class AbstractSeleniumTest { private static final Logger logger = Logger.getLogger(AbstractSeleniumTest.class.getName()); diff --git a/java/com.sap.sailing.selenium.test/src/com/sap/sailing/selenium/test/adminconsole/TestRefreshableSelectionModel.java b/java/com.sap.sailing.selenium.test/src/com/sap/sailing/selenium/test/adminconsole/TestRefreshableSelectionModel.java index bb39f25966d..814472dafdf 100644 --- a/java/com.sap.sailing.selenium.test/src/com/sap/sailing/selenium/test/adminconsole/TestRefreshableSelectionModel.java +++ b/java/com.sap.sailing.selenium.test/src/com/sap/sailing/selenium/test/adminconsole/TestRefreshableSelectionModel.java @@ -71,7 +71,7 @@ public class TestRefreshableSelectionModel extends AbstractSeleniumTest { @SeleniumTestCase public void testMaintenanceOfSelectionAfterDataChanges() { - this.environment.getWindowManager().withExtraWindow((windowForSelection, windowForEdit) -> { + this.environment.getWindowManager().withExtraWindow(getWebDriver(), (windowForSelection, windowForEdit) -> { final WebDriver windowForEditDriver = windowForEdit.switchToWindow(); setUpAuthenticatedSession(windowForEditDriver); final TrackedRacesCompetitorsPanelPO competitorsPanel = goToCompetitorsPanel( @@ -190,7 +190,7 @@ public class TestRefreshableSelectionModel extends AbstractSeleniumTest { @SeleniumTestCase public void testRefreshOfDependingUIElements() { - this.environment.getWindowManager().withExtraWindow((windowForSelection, windowForEdit) -> { + this.environment.getWindowManager().withExtraWindow(getWebDriver(), (windowForSelection, windowForEdit) -> { setUpTestRefreshOfDependingUIElements(); AdminConsolePage adminConsole = AdminConsolePage.goToPage(getWebDriver(), getContextRoot()); SmartphoneTrackingEventManagementPanelPO smartphoneTrackingPanel = adminConsole.goToSmartphoneTrackingPanel(); diff --git a/java/com.sap.sailing.selenium.test/src/com/sap/sailing/selenium/test/leaderboard/TestLeaderboardConfiguration.java b/java/com.sap.sailing.selenium.test/src/com/sap/sailing/selenium/test/leaderboard/TestLeaderboardConfiguration.java index 3a0d0368739..4d52b0a57d5 100644 --- a/java/com.sap.sailing.selenium.test/src/com/sap/sailing/selenium/test/leaderboard/TestLeaderboardConfiguration.java +++ b/java/com.sap.sailing.selenium.test/src/com/sap/sailing/selenium/test/leaderboard/TestLeaderboardConfiguration.java @@ -8,7 +8,6 @@ import java.util.Arrays; import java.util.List; import org.junit.jupiter.api.BeforeEach; -import org.junit.jupiter.api.Disabled; import org.openqa.selenium.WebDriver; import com.sap.sailing.selenium.core.SeleniumTestCase; @@ -72,7 +71,7 @@ public class TestLeaderboardConfiguration extends AbstractSeleniumTest { @SeleniumTestCase public void testDynamicRaceLinking() { - this.environment.getWindowManager().withExtraWindow((leaderboardWindow, adminConsoleWindow) -> { + this.environment.getWindowManager().withExtraWindow(getWebDriver(), (leaderboardWindow, adminConsoleWindow) -> { // Open the leaderboard and check for "empty" leaderboard LeaderboardPage leaderboard = LeaderboardPage.goToPage(getWebDriver(), getContextRoot(), LEADERBOARD, false); LeaderboardTablePO table = leaderboard.getLeaderboardTable(); @@ -110,7 +109,7 @@ public class TestLeaderboardConfiguration extends AbstractSeleniumTest { @SeleniumTestCase public void testDynamicRaceDeletion() { - this.environment.getWindowManager().withExtraWindow((adminConsoleWindow, leaderboardWindow) -> { + this.environment.getWindowManager().withExtraWindow(getWebDriver(), (adminConsoleWindow, leaderboardWindow) -> { // Go to the administration console and link all 5 races AdminConsolePage adminConsole = AdminConsolePage.goToPage(getWebDriver(), getContextRoot()); LeaderboardConfigurationPanelPO leaderboardConfiguration = adminConsole.goToLeaderboardConfiguration(); @@ -142,10 +141,9 @@ public class TestLeaderboardConfiguration extends AbstractSeleniumTest { }); } - @Disabled("This test belongs to bug 1892 and currently fails. It is currently enabled on branch bug1892.") @SeleniumTestCase public void testDynamicRenamingOfRace() { - this.environment.getWindowManager().withExtraWindow((adminConsoleWindow, leaderboardWindow) -> { + this.environment.getWindowManager().withExtraWindow(getWebDriver(), (adminConsoleWindow, leaderboardWindow) -> { // Go to the administration console and link all 5 races AdminConsolePage adminConsole = AdminConsolePage.goToPage(getWebDriver(), getContextRoot()); LeaderboardConfigurationPanelPO leaderboardConfiguration = adminConsole.goToLeaderboardConfiguration(); diff --git a/java/com.sap.sailing.selenium.test/src/com/sap/sailing/selenium/test/leaderboard/TestSwitchingOffStartOfRaceInference.java b/java/com.sap.sailing.selenium.test/src/com/sap/sailing/selenium/test/leaderboard/TestSwitchingOffStartOfRaceInference.java index 67155456b67..d53ae1a4e02 100755 --- a/java/com.sap.sailing.selenium.test/src/com/sap/sailing/selenium/test/leaderboard/TestSwitchingOffStartOfRaceInference.java +++ b/java/com.sap.sailing.selenium.test/src/com/sap/sailing/selenium/test/leaderboard/TestSwitchingOffStartOfRaceInference.java @@ -60,7 +60,7 @@ public class TestSwitchingOffStartOfRaceInference extends AbstractSeleniumTest { @SeleniumTestCase public void testCorrectDisplayOfRaceColumnWithAndWithoutStartTimeInference() { - this.environment.getWindowManager().withExtraWindow((adminConsoleWindow, leaderboardWindow) -> { + this.environment.getWindowManager().withExtraWindow(getWebDriver(), (adminConsoleWindow, leaderboardWindow) -> { final WebDriver leaderboardWindowDriver = leaderboardWindow.switchToWindow(); setUpAuthenticatedSession(leaderboardWindowDriver); LeaderboardPage leaderboard = LeaderboardPage.goToPage(leaderboardWindowDriver, getContextRoot(), LEADERBOARD, /* race details */ false); diff --git a/java/com.sap.sailing.server.interface/src/com/sap/sailing/server/operationaltransformation/ImportMasterDataOperation.java b/java/com.sap.sailing.server.interface/src/com/sap/sailing/server/operationaltransformation/ImportMasterDataOperation.java index f87b7a218fc..3a83b33828a 100755 --- a/java/com.sap.sailing.server.interface/src/com/sap/sailing/server/operationaltransformation/ImportMasterDataOperation.java +++ b/java/com.sap.sailing.server.interface/src/com/sap/sailing/server/operationaltransformation/ImportMasterDataOperation.java @@ -139,6 +139,7 @@ public class ImportMasterDataOperation extends @Override public MasterDataImportObjectCreationCountImpl internalApplyTo(RacingEventService toState) throws Exception { + logger.info("Starting to import master data into "+toState); final DataImportLockWithProgress dataImportLock = toState.getDataImportLock(); SecurityService securityService = toState.getSecurityService(); if (securityService == null) { @@ -194,6 +195,7 @@ public class ImportMasterDataOperation extends waitForTrackedRacesToFinishLoading(trackedRacesToWaitForLoadingComplete); dataImportLock.getProgress(importOperationId).setResult(creationCount); progress.setOverAllProgressPct(1.0); + logger.info("Done importing master data into "+toState); return creationCount; } catch (Exception e) { logger.log(Level.SEVERE, "Error during execution of ImportMasterDataOperation", e); diff --git a/java/com.sap.sailing.server.replication.test/META-INF/MANIFEST.MF b/java/com.sap.sailing.server.replication.test/META-INF/MANIFEST.MF index b51317e4435..f503e1dca00 100644 --- a/java/com.sap.sailing.server.replication.test/META-INF/MANIFEST.MF +++ b/java/com.sap.sailing.server.replication.test/META-INF/MANIFEST.MF @@ -48,5 +48,7 @@ Require-Bundle: com.sap.sailing.server, com.sap.sailing.shared.server, com.sap.sailing.resultimport, com.sap.sailing.shared.server.gateway, - com.sap.sailing.server.gateway.interfaces + com.sap.sailing.server.gateway.interfaces, + net.bytebuddy.byte-buddy;bundle-version="1.14.12", + net.bytebuddy.byte-buddy-agent;bundle-version="1.14.12" Automatic-Module-Name: com.sap.sailing.server.replication.test diff --git a/java/com.sap.sailing.server.replication.test/ReplicationTests (No Proxy).launch b/java/com.sap.sailing.server.replication.test/ReplicationTests (No Proxy).launch index 36678094380..9977290b8e3 100644 --- a/java/com.sap.sailing.server.replication.test/ReplicationTests (No Proxy).launch +++ b/java/com.sap.sailing.server.replication.test/ReplicationTests (No Proxy).launch @@ -13,15 +13,8 @@ - + - - - - - - - diff --git a/java/com.sap.sailing.server.replication.test/src/com/sap/sailing/server/replication/test/AbstractServerReplicationTest.java b/java/com.sap.sailing.server.replication.test/src/com/sap/sailing/server/replication/test/AbstractServerReplicationTest.java index 3b7a20a5d9c..aa2c608c83d 100755 --- a/java/com.sap.sailing.server.replication.test/src/com/sap/sailing/server/replication/test/AbstractServerReplicationTest.java +++ b/java/com.sap.sailing.server.replication.test/src/com/sap/sailing/server/replication/test/AbstractServerReplicationTest.java @@ -19,22 +19,15 @@ import com.sap.sse.security.SecurityService; public abstract class AbstractServerReplicationTest extends com.sap.sse.replication.testsupport.AbstractServerWithSingleServiceReplicationTest { protected ServerReplicationTestSetUp testSetUp; - protected final FullyInitializedReplicableTracker securityServiceTrackerMock; - - protected AbstractServerReplicationTest(final FullyInitializedReplicableTracker securityServiceTrackerMock, - ServerReplicationTestSetUp testSetUp) { - super(testSetUp); - this.testSetUp = testSetUp; - this.securityServiceTrackerMock = securityServiceTrackerMock; - } protected AbstractServerReplicationTest(ServerReplicationTestSetUp testSetUp) { - this(null, testSetUp); + super(testSetUp); + this.testSetUp = testSetUp; } + public AbstractServerReplicationTest() { super(new ServerReplicationTestSetUp()); - this.securityServiceTrackerMock = null; testSetUp = (ServerReplicationTestSetUp) super.testSetUp; } @@ -42,6 +35,14 @@ public abstract class AbstractServerReplicationTest extends com.sap.sse.replicat protected MongoDBService mongoDBService; protected MongoObjectFactory mongoObjectFactory; + protected ServerReplicationTestSetUp() { + super(); + } + + protected ServerReplicationTestSetUp(FullyInitializedReplicableTracker securityServiceTrackerMock) { + super(securityServiceTrackerMock); + } + /** * Drops the test DB, if dropDB is true and requests the DB to start. */ @@ -55,7 +56,7 @@ public abstract class AbstractServerReplicationTest extends com.sap.sse.replicat } @Override - public RacingEventServiceImpl createNewMaster() { + public RacingEventServiceImpl createNewMaster(FullyInitializedReplicableTracker securityServiceTrackerMock) { return new RacingEventServiceImpl((final RaceLogAndTrackedRaceResolver raceLogResolver)-> { return new ConstructorParameters() { private final DomainFactory baseDomainFactory = new DomainFactoryImpl(raceLogResolver); @@ -73,7 +74,7 @@ public abstract class AbstractServerReplicationTest extends com.sap.sse.replicat } @Override - public RacingEventServiceImpl createNewReplica() { + public RacingEventServiceImpl createNewReplica(FullyInitializedReplicableTracker securityServiceTrackerMock) { return new RacingEventServiceImpl( (final RaceLogAndTrackedRaceResolver raceLogResolver) -> { return new RacingEventServiceImpl.ConstructorParameters() { diff --git a/java/com.sap.sailing.server.replication.test/src/com/sap/sailing/server/replication/test/MediaReplicationTest.java b/java/com.sap.sailing.server.replication.test/src/com/sap/sailing/server/replication/test/MediaReplicationTest.java index 756fa57656a..f7c05285803 100644 --- a/java/com.sap.sailing.server.replication.test/src/com/sap/sailing/server/replication/test/MediaReplicationTest.java +++ b/java/com.sap.sailing.server.replication.test/src/com/sap/sailing/server/replication/test/MediaReplicationTest.java @@ -11,13 +11,12 @@ import static org.mockito.Mockito.when; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; -import java.io.IOException; -import java.net.MalformedURLException; import java.util.Arrays; import java.util.Collection; import java.util.Collections; import java.util.HashSet; import java.util.List; +import java.util.Optional; import java.util.Set; import java.util.UUID; @@ -70,14 +69,14 @@ import com.sap.sse.security.shared.impl.SecuredSecurityTypes.PublicReadableActio import com.sap.sse.security.shared.impl.SecuredSecurityTypes.ServerActions; import com.sap.sse.security.shared.impl.User; import com.sap.sse.security.shared.impl.UserGroupImpl; +import com.sap.sse.shared.util.Wait; public class MediaReplicationTest extends AbstractServerReplicationTest { @SuppressWarnings("unchecked") public MediaReplicationTest() { - super(mock(FullyInitializedReplicableTracker.class), new ServerReplicationTestSetUp() { + super(new ServerReplicationTestSetUp(mock(FullyInitializedReplicableTracker.class)) { @Override - public RacingEventServiceImpl createNewReplica() { - final FullyInitializedReplicableTracker securityServiceTrackerMock = mock(FullyInitializedReplicableTracker.class); + public RacingEventServiceImpl createNewReplica(FullyInitializedReplicableTracker securityServiceTrackerMock) { final MongoDBConfiguration masterMongoDBConfig = mongoDBService.getConfiguration(); final ConnectionString masterMongoDbUri = masterMongoDBConfig.getMongoClientURI(); final MongoDBConfiguration proxyReplicaMongoDBConfig = new MongoDBConfiguration( @@ -87,6 +86,7 @@ public class MediaReplicationTest extends AbstractServerReplicationTest { (proxyReplicaMongoDBConfig.getMongoClientURI().getConnectionString().indexOf("?") < 0 ? "?" : "&") + masterMongoDbUri.getConnectionString().substring(masterMongoDbUri.getConnectionString().indexOf("?")+1)); final MongoDBService replicaMongoDBService = new MongoDBConfiguration(replicaMongoDbUri).getService(); + replicaMongoDBService.getDB().drop(); // drop the replica DB, if it exists final RacingEventServiceImpl result = new RacingEventServiceImpl( (final RaceLogAndTrackedRaceResolver raceLogResolver) -> { return new RacingEventServiceImpl.ConstructorParameters() { @@ -246,8 +246,7 @@ public class MediaReplicationTest extends AbstractServerReplicationTest { } @Test - public void testMasterDataImportForMediaTracks() throws MalformedURLException, IOException, InterruptedException, - ClassNotFoundException { + public void testMasterDataImportForMediaTracks() throws Exception { UserGroupImpl defaultTenant = new UserGroupImpl(new UUID(0, 1), "defaultTenant"); User currentUser = new UserImpl("test", "email@test", Collections.emptyMap(), null, new LockingAndBanningImpl()); SecurityService securityService = Mockito.mock(SecurityService.class); @@ -264,7 +263,7 @@ public class MediaReplicationTest extends AbstractServerReplicationTest { // Setup source service RacingEventServiceImpl sourceService = Mockito.spy(new RacingEventServiceImpl()); Mockito.doReturn(securityService).when(sourceService).getSecurityService(); - when(securityServiceTrackerMock.getInitializedService(0)).thenReturn(securityService); + when(testSetUp.getSecurityServiceTrackerMock().getInitializedService(0)).thenReturn(securityService); Set assignedRaces = new HashSet(); String regattaName1 = "49er"; String regattaName2 = "49er FX"; @@ -319,6 +318,7 @@ public class MediaReplicationTest extends AbstractServerReplicationTest { os.flush(); // Delete all data above from the database, to allow recreating all of it on target server deleteAllDataFromDatabase(); + waitSomeTime(); // ...for the DB to be empty // Import in new service domainFactory = fmaster.getBaseDomainFactory(); // ensure that this class's class loader and with it the dependency to com.sap.sailing.domain.test @@ -336,7 +336,10 @@ public class MediaReplicationTest extends AbstractServerReplicationTest { // ---Asserts--- final Iterable targetTracksMaster = master.getAllMediaTracks(); compareTracks(trackOnSource, targetTracksMaster); - waitSomeTime(); + Wait.wait(()->replica.getDataImportLock() != null + && replica.getDataImportLock().getProgress(randomUUID) != null + && replica.getDataImportLock().getProgress(randomUUID).getOverallProgressPct() >= 1.0, + Optional.of(Duration.ONE_SECOND.times(5)), Duration.ONE_SECOND); final Iterable targetTracksReplica = replica.getAllMediaTracks(); compareTracks(trackOnSource, targetTracksReplica); } diff --git a/java/com.sap.sailing.server/SailingServer (No Proxy OSX).launch b/java/com.sap.sailing.server/SailingServer (No Proxy OSX).launch index df503df9f17..5bcf70b4d84 100755 --- a/java/com.sap.sailing.server/SailingServer (No Proxy OSX).launch +++ b/java/com.sap.sailing.server/SailingServer (No Proxy OSX).launch @@ -179,6 +179,8 @@ + + @@ -248,252 +250,6 @@ -<<<<<<< HEAD -======= - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ->>>>>>> 3912c3f6342... bug6127: removed junit "vintage" from target platform after JUnit5 migration -======= ->>>>>>> main diff --git a/java/com.sap.sailing.server/SailingServer (No Proxy).launch b/java/com.sap.sailing.server/SailingServer (No Proxy).launch index 25e2accb744..b96bc86787d 100755 --- a/java/com.sap.sailing.server/SailingServer (No Proxy).launch +++ b/java/com.sap.sailing.server/SailingServer (No Proxy).launch @@ -185,6 +185,8 @@ + + diff --git a/java/com.sap.sailing.server/SailingServer (No Proxy, Axel).launch b/java/com.sap.sailing.server/SailingServer (No Proxy, Axel).launch index 3288a8b27a5..3bdfefc507a 100644 --- a/java/com.sap.sailing.server/SailingServer (No Proxy, Axel).launch +++ b/java/com.sap.sailing.server/SailingServer (No Proxy, Axel).launch @@ -185,6 +185,8 @@ + + @@ -254,252 +256,6 @@ -<<<<<<< HEAD -======= - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ->>>>>>> 3912c3f6342... bug6127: removed junit "vintage" from target platform after JUnit5 migration -======= ->>>>>>> main diff --git a/java/com.sap.sailing.server/SailingServer (No Proxy, Cached MTB).launch b/java/com.sap.sailing.server/SailingServer (No Proxy, Cached MTB).launch index 6982557c1cc..9df8b044c74 100755 --- a/java/com.sap.sailing.server/SailingServer (No Proxy, Cached MTB).launch +++ b/java/com.sap.sailing.server/SailingServer (No Proxy, Cached MTB).launch @@ -178,6 +178,8 @@ + + @@ -247,252 +249,7 @@ -<<<<<<< HEAD -======= - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ->>>>>>> 3912c3f6342... bug6127: removed junit "vintage" from target platform after JUnit5 migration -======= ->>>>>>> main diff --git a/java/com.sap.sailing.server/SailingServer (No Proxy, Java11).launch b/java/com.sap.sailing.server/SailingServer (No Proxy, Java11).launch index 9dc8e631327..9d1b0744ef8 100755 --- a/java/com.sap.sailing.server/SailingServer (No Proxy, Java11).launch +++ b/java/com.sap.sailing.server/SailingServer (No Proxy, Java11).launch @@ -183,6 +183,8 @@ + + @@ -252,252 +254,6 @@ -<<<<<<< HEAD -======= - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ->>>>>>> 3912c3f6342... bug6127: removed junit "vintage" from target platform after JUnit5 migration -======= ->>>>>>> main diff --git a/java/com.sap.sailing.server/SailingServer (No Proxy, Java11, JFR Recording).launch b/java/com.sap.sailing.server/SailingServer (No Proxy, Java11, JFR Recording).launch index ccd9b6a151a..7fc9a472812 100755 --- a/java/com.sap.sailing.server/SailingServer (No Proxy, Java11, JFR Recording).launch +++ b/java/com.sap.sailing.server/SailingServer (No Proxy, Java11, JFR Recording).launch @@ -182,6 +182,8 @@ + + @@ -251,252 +253,6 @@ -<<<<<<< HEAD -======= - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ->>>>>>> 3912c3f6342... bug6127: removed junit "vintage" from target platform after JUnit5 migration -======= ->>>>>>> main diff --git a/java/com.sap.sailing.server/SailingServer (No Proxy, Jetty on 8889).launch b/java/com.sap.sailing.server/SailingServer (No Proxy, Jetty on 8889).launch index 00d1f4d22b2..37e49dfcbc4 100755 --- a/java/com.sap.sailing.server/SailingServer (No Proxy, Jetty on 8889).launch +++ b/java/com.sap.sailing.server/SailingServer (No Proxy, Jetty on 8889).launch @@ -176,6 +176,8 @@ + + @@ -245,252 +247,6 @@ -<<<<<<< HEAD -======= - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ->>>>>>> 3912c3f6342... bug6127: removed junit "vintage" from target platform after JUnit5 migration -======= ->>>>>>> main diff --git a/java/com.sap.sailing.server/SailingServer (No Proxy, Jetty on 8889, Cached MTB).launch b/java/com.sap.sailing.server/SailingServer (No Proxy, Jetty on 8889, Cached MTB).launch index 2dae424f9fc..7b6d1c054b7 100755 --- a/java/com.sap.sailing.server/SailingServer (No Proxy, Jetty on 8889, Cached MTB).launch +++ b/java/com.sap.sailing.server/SailingServer (No Proxy, Jetty on 8889, Cached MTB).launch @@ -172,6 +172,8 @@ + + @@ -241,252 +243,6 @@ -<<<<<<< HEAD -======= - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ->>>>>>> 3912c3f6342... bug6127: removed junit "vintage" from target platform after JUnit5 migration -======= ->>>>>>> main diff --git a/java/com.sap.sailing.server/SailingServer (No Proxy, Jetty on 8889, auto-replicate SS and SSD).launch b/java/com.sap.sailing.server/SailingServer (No Proxy, Jetty on 8889, auto-replicate SS and SSD).launch index f054cf03302..e038c96c64b 100755 --- a/java/com.sap.sailing.server/SailingServer (No Proxy, Jetty on 8889, auto-replicate SS and SSD).launch +++ b/java/com.sap.sailing.server/SailingServer (No Proxy, Jetty on 8889, auto-replicate SS and SSD).launch @@ -178,6 +178,8 @@ + + @@ -247,252 +249,6 @@ -<<<<<<< HEAD -======= - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ->>>>>>> 3912c3f6342... bug6127: removed junit "vintage" from target platform after JUnit5 migration -======= ->>>>>>> main diff --git a/java/com.sap.sailing.server/SailingServer (No Proxy, Jetty on 8889, auto-replicate dev).launch b/java/com.sap.sailing.server/SailingServer (No Proxy, Jetty on 8889, auto-replicate dev).launch index f23faaa0b2f..d555ad3097d 100755 --- a/java/com.sap.sailing.server/SailingServer (No Proxy, Jetty on 8889, auto-replicate dev).launch +++ b/java/com.sap.sailing.server/SailingServer (No Proxy, Jetty on 8889, auto-replicate dev).launch @@ -176,6 +176,8 @@ + + @@ -245,252 +247,6 @@ -<<<<<<< HEAD -======= - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ->>>>>>> 3912c3f6342... bug6127: removed junit "vintage" from target platform after JUnit5 migration -======= ->>>>>>> main diff --git a/java/com.sap.sailing.server/SailingServer (No Proxy, Jetty on 8889, auto-replicate).launch b/java/com.sap.sailing.server/SailingServer (No Proxy, Jetty on 8889, auto-replicate).launch index 3d382896cac..1d78953b1ae 100755 --- a/java/com.sap.sailing.server/SailingServer (No Proxy, Jetty on 8889, auto-replicate).launch +++ b/java/com.sap.sailing.server/SailingServer (No Proxy, Jetty on 8889, auto-replicate).launch @@ -178,6 +178,8 @@ + + @@ -247,252 +249,6 @@ -<<<<<<< HEAD -======= - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ->>>>>>> 3912c3f6342... bug6127: removed junit "vintage" from target platform after JUnit5 migration -======= ->>>>>>> main diff --git a/java/com.sap.sailing.server/SailingServer (No Proxy, Jetty on 8890).launch b/java/com.sap.sailing.server/SailingServer (No Proxy, Jetty on 8890).launch index e341effd4ae..3cc6e62995b 100755 --- a/java/com.sap.sailing.server/SailingServer (No Proxy, Jetty on 8890).launch +++ b/java/com.sap.sailing.server/SailingServer (No Proxy, Jetty on 8890).launch @@ -176,6 +176,8 @@ + + @@ -245,252 +247,6 @@ -<<<<<<< HEAD -======= - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ->>>>>>> 3912c3f6342... bug6127: removed junit "vintage" from target platform after JUnit5 migration -======= ->>>>>>> main diff --git a/java/com.sap.sailing.server/SailingServer (No Proxy, Jetty on 8890, auto-replicate from replica at 8889).launch b/java/com.sap.sailing.server/SailingServer (No Proxy, Jetty on 8890, auto-replicate from replica at 8889).launch index f23af2d1e39..84d91ae9b0c 100755 --- a/java/com.sap.sailing.server/SailingServer (No Proxy, Jetty on 8890, auto-replicate from replica at 8889).launch +++ b/java/com.sap.sailing.server/SailingServer (No Proxy, Jetty on 8890, auto-replicate from replica at 8889).launch @@ -176,6 +176,8 @@ + + @@ -245,252 +247,6 @@ -<<<<<<< HEAD -======= - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ->>>>>>> 3912c3f6342... bug6127: removed junit "vintage" from target platform after JUnit5 migration -======= ->>>>>>> main diff --git a/java/com.sap.sailing.server/SailingServer (No Proxy, Remote Debug SAP VM).launch b/java/com.sap.sailing.server/SailingServer (No Proxy, Remote Debug SAP VM).launch index 7bb67c75aac..fada308753f 100755 --- a/java/com.sap.sailing.server/SailingServer (No Proxy, Remote Debug SAP VM).launch +++ b/java/com.sap.sailing.server/SailingServer (No Proxy, Remote Debug SAP VM).launch @@ -172,6 +172,8 @@ + + @@ -241,252 +243,6 @@ -<<<<<<< HEAD -======= - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ->>>>>>> 3912c3f6342... bug6127: removed junit "vintage" from target platform after JUnit5 migration -======= ->>>>>>> main diff --git a/java/com.sap.sailing.server/SailingServer (No Proxy, debranding active).launch b/java/com.sap.sailing.server/SailingServer (No Proxy, debranding active).launch index 153a08feaf0..d3c6341cc08 100755 --- a/java/com.sap.sailing.server/SailingServer (No Proxy, debranding active).launch +++ b/java/com.sap.sailing.server/SailingServer (No Proxy, debranding active).launch @@ -181,6 +181,8 @@ + + @@ -250,252 +252,6 @@ -<<<<<<< HEAD -======= - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ->>>>>>> 3912c3f6342... bug6127: removed junit "vintage" from target platform after JUnit5 migration -======= ->>>>>>> main diff --git a/java/com.sap.sailing.server/SailingServer (No Proxy, winddb Axel).launch b/java/com.sap.sailing.server/SailingServer (No Proxy, winddb Axel).launch index 85fa46d74ac..c4a5d225273 100644 --- a/java/com.sap.sailing.server/SailingServer (No Proxy, winddb Axel).launch +++ b/java/com.sap.sailing.server/SailingServer (No Proxy, winddb Axel).launch @@ -178,6 +178,8 @@ + + @@ -247,252 +249,6 @@ -<<<<<<< HEAD -======= - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ->>>>>>> 3912c3f6342... bug6127: removed junit "vintage" from target platform after JUnit5 migration -======= ->>>>>>> main diff --git a/java/com.sap.sailing.server/SailingServer (No Proxy, winddbTest Axel).launch b/java/com.sap.sailing.server/SailingServer (No Proxy, winddbTest Axel).launch index 799005fbdc0..bbde08cf964 100755 --- a/java/com.sap.sailing.server/SailingServer (No Proxy, winddbTest Axel).launch +++ b/java/com.sap.sailing.server/SailingServer (No Proxy, winddbTest Axel).launch @@ -178,6 +178,8 @@ + + @@ -247,252 +249,6 @@ -<<<<<<< HEAD -======= - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ->>>>>>> 3912c3f6342... bug6127: removed junit "vintage" from target platform after JUnit5 migration -======= ->>>>>>> main diff --git a/java/com.sap.sailing.server/SailingServer (No Proxy, winddbTest).launch b/java/com.sap.sailing.server/SailingServer (No Proxy, winddbTest).launch index 385a78b662d..c596172f9ac 100755 --- a/java/com.sap.sailing.server/SailingServer (No Proxy, winddbTest).launch +++ b/java/com.sap.sailing.server/SailingServer (No Proxy, winddbTest).launch @@ -185,6 +185,8 @@ + + @@ -254,228 +256,6 @@ -======= - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ->>>>>>> github/bug6135 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 bd9409c3349..e41c590b34e 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,7 +10,9 @@ 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.FullyInitializedReplicableTracker; import com.sap.sse.replication.testsupport.AbstractServerWithSingleServiceReplicationTest; +import com.sap.sse.security.SecurityService; public abstract class AbstractFileStorageManagementServiceReplicationTest extends AbstractServerWithSingleServiceReplicationTest { @@ -36,7 +38,7 @@ public abstract class AbstractFileStorageManagementServiceReplicationTest extend } @Override - public FileStorageManagementServiceImpl createNewMaster() throws MalformedURLException, IOException, + public FileStorageManagementServiceImpl createNewMaster(FullyInitializedReplicableTracker securityServiceTrackerMock) throws MalformedURLException, IOException, InterruptedException { FileStorageManagementServiceImpl result = createNewService(); FileStorageService serviceOnMaster = result.getAvailableFileStorageServices()[0]; @@ -46,7 +48,7 @@ public abstract class AbstractFileStorageManagementServiceReplicationTest extend } @Override - public FileStorageManagementServiceImpl createNewReplica() { + public FileStorageManagementServiceImpl createNewReplica(FullyInitializedReplicableTracker securityServiceTrackerMock) { return createNewService(); } diff --git a/java/com.sap.sse.mail.replication.testsupport/META-INF/MANIFEST.MF b/java/com.sap.sse.mail.replication.testsupport/META-INF/MANIFEST.MF index 8f3973244e0..3f03bf2bb47 100644 --- a/java/com.sap.sse.mail.replication.testsupport/META-INF/MANIFEST.MF +++ b/java/com.sap.sse.mail.replication.testsupport/META-INF/MANIFEST.MF @@ -20,4 +20,5 @@ Require-Bundle: com.sap.sse.replication, com.sap.sse.replication.interfaces;bundle-version="1.0.0", org.hamcrest;bundle-version="2.2.0" Export-Package: com.sap.sse.mail.replication.testsupport +Import-Package: com.sap.sse.security Automatic-Module-Name: com.sap.sse.mail.replication.testsupport diff --git a/java/com.sap.sse.mail.replication.testsupport/src/com/sap/sse/mail/replication/testsupport/AbstractMailServiceReplicationTest.java b/java/com.sap.sse.mail.replication.testsupport/src/com/sap/sse/mail/replication/testsupport/AbstractMailServiceReplicationTest.java index 56f080afb3d..0a574299903 100644 --- a/java/com.sap.sse.mail.replication.testsupport/src/com/sap/sse/mail/replication/testsupport/AbstractMailServiceReplicationTest.java +++ b/java/com.sap.sse.mail.replication.testsupport/src/com/sap/sse/mail/replication/testsupport/AbstractMailServiceReplicationTest.java @@ -10,8 +10,10 @@ import com.sap.sse.mail.MailService; import com.sap.sse.mail.MailServiceResolver; import com.sap.sse.mail.SerializableMultipartSupplier; import com.sap.sse.mail.impl.MailServiceImpl; +import com.sap.sse.replication.FullyInitializedReplicableTracker; import com.sap.sse.replication.testsupport.AbstractServerReplicationTestSetUp; import com.sap.sse.replication.testsupport.AbstractServerWithSingleServiceReplicationTest; +import com.sap.sse.security.SecurityService; public class AbstractMailServiceReplicationTest extends AbstractServerWithSingleServiceReplicationTest { public AbstractMailServiceReplicationTest() { @@ -59,12 +61,12 @@ public class AbstractMailServiceReplicationTest extends AbstractServerWithSingle public static class MailServerReplicationTestSetUp extends AbstractServerReplicationTestSetUp { @Override - protected MailServiceImpl createNewMaster() throws MailException { + protected MailServiceImpl createNewMaster(FullyInitializedReplicableTracker securityServiceTrackerMock) throws MailException { return createMailCountingService(true); } @Override - protected MailServiceImpl createNewReplica() throws MailException { + protected MailServiceImpl createNewReplica(FullyInitializedReplicableTracker securityServiceTrackerMock) throws MailException { return createMailCountingService(false); } } diff --git a/java/com.sap.sse.replication.testsupport/META-INF/MANIFEST.MF b/java/com.sap.sse.replication.testsupport/META-INF/MANIFEST.MF index 05240117d9b..7cfa0e16f65 100644 --- a/java/com.sap.sse.replication.testsupport/META-INF/MANIFEST.MF +++ b/java/com.sap.sse.replication.testsupport/META-INF/MANIFEST.MF @@ -22,7 +22,8 @@ Require-Bundle: junit-jupiter-api;bundle-version="5.12.2", org.hamcrest;bundle-version="2.2.0" Export-Package: com.sap.sse.replication.testsupport Automatic-Module-Name: com.sap.sse.replication.testsupport -Import-Package: javax.servlet;version="3.1.0", +Import-Package: com.sap.sse.security, + javax.servlet;version="3.1.0", javax.servlet.http;version="3.1.0", org.mockito;version="4.8.1", org.mockito.invocation;version="4.8.1", diff --git a/java/com.sap.sse.replication.testsupport/src/com/sap/sse/replication/testsupport/AbstractServerReplicationTestSetUp.java b/java/com.sap.sse.replication.testsupport/src/com/sap/sse/replication/testsupport/AbstractServerReplicationTestSetUp.java index 71a69aa3db3..a252d7881f1 100644 --- a/java/com.sap.sse.replication.testsupport/src/com/sap/sse/replication/testsupport/AbstractServerReplicationTestSetUp.java +++ b/java/com.sap.sse.replication.testsupport/src/com/sap/sse/replication/testsupport/AbstractServerReplicationTestSetUp.java @@ -42,6 +42,7 @@ import org.mockito.stubbing.Answer; import com.rabbitmq.client.Channel; import com.rabbitmq.client.QueueingConsumer; import com.sap.sse.common.Util.Pair; +import com.sap.sse.replication.FullyInitializedReplicableTracker; import com.sap.sse.replication.ReplicaDescriptor; import com.sap.sse.replication.Replicable; import com.sap.sse.replication.ReplicationMasterDescriptor; @@ -57,7 +58,7 @@ import com.sap.sse.replication.impl.ReplicationServiceImpl; import com.sap.sse.replication.impl.ReplicationServlet; import com.sap.sse.replication.impl.SingletonReplicablesProvider; import com.sap.sse.replication.interfaces.impl.ReplicaDescriptorImpl; - +import com.sap.sse.security.SecurityService; import net.jpountz.lz4.LZ4BlockOutputStream; @Timeout(value=5, unit=TimeUnit.MINUTES) // timeout after 5 minutes @@ -73,16 +74,27 @@ public abstract class AbstractServerReplicationTestSetUp securityServiceTrackerMock; protected AbstractServerReplicationTestSetUp() { + this(/* securityServiceTrackerMock*/ null); } protected AbstractServerReplicationTestSetUp(int servletPort) { + this(/* securityServiceTrackerMock*/ null); this.servletPort = servletPort; } - private Thread initialLoadTestServerThread; - + protected AbstractServerReplicationTestSetUp(final FullyInitializedReplicableTracker securityServiceTrackerMock) { + this.securityServiceTrackerMock = securityServiceTrackerMock; + } + + public FullyInitializedReplicableTracker getSecurityServiceTrackerMock() { + return securityServiceTrackerMock; + } + /** * Sets up master and replica, starts the JMS message broker and registers the replica with the master. If you want * to drop the DB in your particular test case first, override {@link #persistenceSetUp(boolean)}. If you don't want @@ -167,12 +179,12 @@ public abstract class AbstractServerReplicationTestSetUpnull */ - protected abstract ReplicableImpl createNewMaster() throws Exception; + protected abstract ReplicableImpl createNewMaster(FullyInitializedReplicableTracker securityServiceTrackerMock) throws Exception; /** - * Creates a new replica replicable instance. This method is called only after {@link #persistenceSetUp(boolean)} has been called. Therefore, - * any initialization that {@link #persistenceSetUp(boolean)} may have performed can be assumed to have taken place in the implementations - * of this method. + * Creates a new replica replicable instance. This method is called only after {@link #persistenceSetUp(boolean)} + * has been called. Therefore, any initialization that {@link #persistenceSetUp(boolean)} may have performed can be + * assumed to have taken place in the implementations of this method. + * + * @param securityServiceTrackerMock + * an optional mock for the security service tracker; may be null */ - protected abstract ReplicableImpl createNewReplica() throws Exception; + protected abstract ReplicableImpl createNewReplica(FullyInitializedReplicableTracker securityServiceTrackerMock) throws Exception; public void tearDown() throws Exception { logger.info("starting to tearDown() test"); 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 index 78469016202..2564944d497 100755 --- 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 @@ -48,11 +48,11 @@ public abstract class AbstractServerWithSingleServiceReplicationTest securityServiceTrackerMock) throws MalformedURLException, IOException, InterruptedException, MailException, UserStoreManagementException { final UserStoreImpl userStore = new UserStoreImpl("TestDefaultTenant"); userStore.ensureDefaultRolesExist(); @@ -45,7 +46,7 @@ public abstract class AbstractSecurityReplicationTest extends AbstractServerWith } @Override - protected SecurityServiceImpl createNewReplica() + protected SecurityServiceImpl createNewReplica(FullyInitializedReplicableTracker securityServiceTrackerMock) throws UserStoreManagementException, MalformedURLException, IOException, InterruptedException { final UserStoreImpl userStore = new UserStoreImpl("TestDefaultTenant"); userStore.ensureDefaultRolesExist(); diff --git a/java/com.sap.sse.security.replication.test/src/com/sap/sse/security/replication/test/SecurityReplicationLeadingToEmailReplicationTest.java b/java/com.sap.sse.security.replication.test/src/com/sap/sse/security/replication/test/SecurityReplicationLeadingToEmailReplicationTest.java index b060206d6c5..221f99d6e72 100644 --- a/java/com.sap.sse.security.replication.test/src/com/sap/sse/security/replication/test/SecurityReplicationLeadingToEmailReplicationTest.java +++ b/java/com.sap.sse.security.replication.test/src/com/sap/sse/security/replication/test/SecurityReplicationLeadingToEmailReplicationTest.java @@ -18,6 +18,7 @@ import com.sap.sse.common.mail.MailException; import com.sap.sse.mail.MailService; import com.sap.sse.mail.impl.MailServiceImpl; import com.sap.sse.mail.replication.testsupport.AbstractMailServiceReplicationTest; +import com.sap.sse.replication.FullyInitializedReplicableTracker; import com.sap.sse.replication.testsupport.AbstractServerWithMultipleServicesReplicationTest; import com.sap.sse.security.SecurityService; import com.sap.sse.security.impl.SecurityServiceImpl; @@ -54,7 +55,7 @@ public class SecurityReplicationLeadingToEmailReplicationTest extends AbstractSe private class SecurityServerReplicationTestSetUp extends AbstractSecurityReplicationTest.SecurityServerReplicationTestSetUp { @Override - protected SecurityServiceImpl createNewMaster() + protected SecurityServiceImpl createNewMaster(FullyInitializedReplicableTracker securityServiceTrackerMock) throws MalformedURLException, IOException, InterruptedException, UserStoreManagementException { @SuppressWarnings("unchecked") ServiceTracker trackerMock = mock(ServiceTracker.class); @@ -70,7 +71,7 @@ public class SecurityReplicationLeadingToEmailReplicationTest extends AbstractSe } @Override - protected SecurityServiceImpl createNewReplica() + protected SecurityServiceImpl createNewReplica(FullyInitializedReplicableTracker securityServiceTrackerMock) throws UserStoreManagementException, MalformedURLException, IOException, InterruptedException { @SuppressWarnings("unchecked") ServiceTracker trackerMock = mock(ServiceTracker.class); @@ -89,12 +90,12 @@ public class SecurityReplicationLeadingToEmailReplicationTest extends AbstractSe private class MailServerReplicationTestSetUp extends AbstractMailServiceReplicationTest.MailServerReplicationTestSetUp { @Override - protected MailServiceImpl createNewMaster() throws MailException { + protected MailServiceImpl createNewMaster(FullyInitializedReplicableTracker securityServiceTrackerMock) throws MailException { return masterMailService; } @Override - protected MailServiceImpl createNewReplica() throws MailException { + protected MailServiceImpl createNewReplica(FullyInitializedReplicableTracker securityServiceTrackerMock) throws MailException { return replicaMailService; } } diff --git a/java/com.sap.sse.security.replication.test/src/com/sap/sse/security/replication/test/SecurityServiceInitialLoadTest.java b/java/com.sap.sse.security.replication.test/src/com/sap/sse/security/replication/test/SecurityServiceInitialLoadTest.java index c49aa43e75a..bb8b2b011af 100755 --- a/java/com.sap.sse.security.replication.test/src/com/sap/sse/security/replication/test/SecurityServiceInitialLoadTest.java +++ b/java/com.sap.sse.security.replication.test/src/com/sap/sse/security/replication/test/SecurityServiceInitialLoadTest.java @@ -9,6 +9,7 @@ import java.util.Locale; import org.junit.jupiter.api.Test; import com.sap.sse.common.mail.MailException; +import com.sap.sse.replication.FullyInitializedReplicableTracker; import com.sap.sse.replication.testsupport.AbstractServerWithSingleServiceReplicationTest; import com.sap.sse.security.SecurityService; import com.sap.sse.security.impl.SecurityServiceImpl; @@ -32,7 +33,7 @@ public class SecurityServiceInitialLoadTest extends AbstractServerWithSingleServ public SecurityServiceInitialLoadTest() { super(new AbstractSecurityReplicationTest.SecurityServerReplicationTestSetUp() { @Override - protected SecurityServiceImpl createNewMaster() + protected SecurityServiceImpl createNewMaster(FullyInitializedReplicableTracker securityServiceTrackerMock) throws MalformedURLException, IOException, InterruptedException, MailException, UserStoreManagementException { final UserStore userStore = new UserStoreImpl(PersistenceFactory.INSTANCE.getDefaultDomainObjectFactory(), PersistenceFactory.INSTANCE.getDefaultMongoObjectFactory(), "TestDefaultTenant"); diff --git a/java/com.sap.sse.test/src/com/sap/sse/test/TestTakedownNoticeFactory.java b/java/com.sap.sse.test/src/com/sap/sse/test/TestTakedownNoticeFactory.java index 4f6fdc5e788..42c9a95d455 100644 --- a/java/com.sap.sse.test/src/com/sap/sse/test/TestTakedownNoticeFactory.java +++ b/java/com.sap.sse.test/src/com/sap/sse/test/TestTakedownNoticeFactory.java @@ -1,12 +1,12 @@ package com.sap.sse.test; -import static org.junit.Assert.assertEquals; +import static org.junit.jupiter.api.Assertions.assertEquals; import java.nio.charset.StandardCharsets; import java.util.Arrays; import java.util.Locale; -import org.junit.Test; +import org.junit.jupiter.api.Test; import com.sap.sse.common.media.NatureOfClaim; import com.sap.sse.common.media.TakedownNoticeRequestContext; diff --git a/wiki/howto/tutorials/sailinganalytics/tracking-race-player.md b/wiki/howto/tutorials/sailinganalytics/tracking-race-player.md new file mode 100644 index 00000000000..462f07f4b8c --- /dev/null +++ b/wiki/howto/tutorials/sailinganalytics/tracking-race-player.md @@ -0,0 +1,4 @@ +The video below gives an excellent overview of the main functionality of the SAP Race Player which is accessible on a per-race basis via the "Races/Tracking" Tab of a regatta. + +[![tracking race player](https://i.vimeocdn.com/video/1580518450-d061bcba753035fe130227e4b1c3ac735440041fabb61c3a14e289b9cd102dd5-d?mw=640&q=85)](https://player.vimeo.com/video/786236240?h=5837f0d8b3) + diff --git a/wiki/howto/tutorials/sailingracemanager/how-to-work-with-app.md b/wiki/howto/tutorials/sailingracemanager/how-to-work-with-app.md new file mode 100644 index 00000000000..e69de29bb2d diff --git a/wiki/howto/tutorials/sailinsight/managing-marks.md b/wiki/howto/tutorials/sailinsight/managing-marks.md new file mode 100644 index 00000000000..e69de29bb2d