mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-10-09 13:50:57 +00:00
Added a replication test, implemented equals for RC events, simplified
the RC Track getter on TrackedRace
This commit is contained in:
1 parent
162ed7724f
commit
f0a1e85da5
5 files changed
+58
-12
No files matched your search
+25
@@ -31,6 +31,7 @@ import com.sap.sailing.domain.base.impl.RaceDefinitionImpl;
|
||||
import com.sap.sailing.domain.base.impl.TeamImpl;
|
||||
import com.sap.sailing.domain.common.RegattaName;
|
||||
import com.sap.sailing.domain.common.RegattaNameAndRaceName;
|
||||
import com.sap.sailing.domain.common.TimePoint;
|
||||
import com.sap.sailing.domain.common.WindSource;
|
||||
import com.sap.sailing.domain.common.WindSourceType;
|
||||
import com.sap.sailing.domain.common.impl.DegreeBearingImpl;
|
||||
@@ -41,6 +42,10 @@ import com.sap.sailing.domain.persistence.MongoFactory;
|
||||
import com.sap.sailing.domain.persistence.MongoRaceCommitteeStoreFactory;
|
||||
import com.sap.sailing.domain.persistence.MongoWindStore;
|
||||
import com.sap.sailing.domain.persistence.MongoWindStoreFactory;
|
||||
import com.sap.sailing.domain.racecommittee.RaceCommitteeEvent;
|
||||
import com.sap.sailing.domain.racecommittee.RaceCommitteeEventFactory;
|
||||
import com.sap.sailing.domain.racecommittee.RaceCommitteeEventTrack;
|
||||
import com.sap.sailing.domain.racecommittee.RaceCommitteeStartTimeEvent;
|
||||
import com.sap.sailing.domain.tracking.DynamicTrackedRegatta;
|
||||
import com.sap.sailing.domain.tracking.DynamicTrackedRace;
|
||||
import com.sap.sailing.domain.tracking.GPSFix;
|
||||
@@ -218,4 +223,24 @@ public class TrackedRaceContentsReplicationTest extends AbstractServerReplicatio
|
||||
windTrack.unlockAfterRead();
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testRaceCommitteeEventAdditionReplication() throws InterruptedException {
|
||||
TimePoint time = MillisecondsTimePoint.now();
|
||||
final RaceCommitteeStartTimeEvent startTimeEvent =
|
||||
RaceCommitteeEventFactory.INSTANCE.createStartTimeEvent(time, 0, new MillisecondsTimePoint(time.asMillis() + 500000));
|
||||
trackedRace.recordRaceCommitteeEvent(startTimeEvent);
|
||||
Thread.sleep(1000);
|
||||
TrackedRace replicaTrackedRace = replica.getTrackedRace(raceIdentifier);
|
||||
RaceCommitteeEventTrack replicaRCEventTrack = replicaTrackedRace.getOrCreateRaceCommitteeEventTrack();
|
||||
replicaRCEventTrack.lockForRead();
|
||||
try {
|
||||
assertEquals(1, Util.size(replicaRCEventTrack.getRawFixes()));
|
||||
RaceCommitteeEvent replicaRaceCommitteeEvent = replicaRCEventTrack.getRawFixes().iterator().next();
|
||||
assertEquals(startTimeEvent, replicaRaceCommitteeEvent);
|
||||
assertNotSame(startTimeEvent, replicaRaceCommitteeEvent);
|
||||
} finally {
|
||||
replicaRCEventTrack.unlockAfterRead();
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user