commented test constructors with null values, added informative javadoc

This commit is contained in:
Dennis Aulenbacher committed 2019-12-05 16:56:04 +01:00
1 parent f8021b5cfa
commit 17e1d760d0
24 files changed
+48 -36

No files matched your search

@@ -129,7 +129,7 @@ public class AbstractGPSFixStoreTest extends RaceLogTrackingTestHelper {
/* endDate */null, null, null, "a", null, /* registrationLinkSecret */ UUID.randomUUID().toString()));
return new DynamicTrackedRaceImpl(regatta, raceDefinition, Collections.<Sideline> emptyList(),
EmptyWindStore.INSTANCE, 0, 0, 0, /* useMarkPassingCalculator */ false, OneDesignRankingMetric::new,
mock(RaceLogAndTrackedRaceResolver.class), null);
mock(RaceLogAndTrackedRaceResolver.class), /* trackingConnectorInfo */ null);
}
protected void testNumberOfRawFixes(Track<?> track, long expected) {
@@ -108,7 +108,7 @@ public class RaceLogFixTrackerManagerTest {
/* registrationLinkSecret */ UUID.randomUUID().toString()));
trackedRace = new DynamicTrackedRaceImpl(regatta, race, Collections.<Sideline> emptyList(),
EmptyWindStore.INSTANCE, 0, 0, 0, /* useMarkPassingCalculator */ false, OneDesignRankingMetric::new,
mock(RaceLogAndTrackedRaceResolver.class), null);
mock(RaceLogAndTrackedRaceResolver.class), /* trackingConnectorInfo */ null);
}
/**
@@ -173,7 +173,7 @@ public class SensorFixStoreAndLoadTest {
/* registrationLinkSecret */ UUID.randomUUID().toString()));
trackedRace = new DynamicTrackedRaceImpl(regatta, race, Collections.<Sideline> emptyList(),
EmptyWindStore.INSTANCE, 0, 0, 0, /* useMarkPassingCalculator */ false, OneDesignRankingMetric::new,
mock(RaceLogAndTrackedRaceResolver.class), null);
mock(RaceLogAndTrackedRaceResolver.class), /* trackingConnectorInfo */ null);
}
private void dropPersistedData() {
@@ -84,7 +84,7 @@ public class TrackedRaceStartTimeInferenceTest extends AbstractGPSFixStoreTest {
final DynamicTrackedRaceImpl trackedRace = new DynamicTrackedRaceImpl(regatta, race,
Collections.<Sideline> emptyList(), EmptyWindStore.INSTANCE, 0, 0, 0,
/* useMarkPassingCalculator */ false,
OneDesignRankingMetric::new, mock(RaceLogAndTrackedRaceResolver.class), null);
OneDesignRankingMetric::new, mock(RaceLogAndTrackedRaceResolver.class), /* trackingConnectorInfo */ null);
MillisecondsTimePoint startOfRaceInRaceLog = new MillisecondsTimePoint(10000);
MillisecondsTimePoint endOfRaceInRaceLog = new MillisecondsTimePoint(20000);
@@ -162,7 +162,7 @@ public class TrackedRaceStartTimeInferenceTest extends AbstractGPSFixStoreTest {
final DynamicTrackedRaceImpl trackedRace = new DynamicTrackedRaceImpl(regatta, race,
Collections.<Sideline> emptyList(), EmptyWindStore.INSTANCE, 0, 0, 0,
/* useMarkPassingCalculator */ false,
OneDesignRankingMetric::new, mock(RaceLogAndTrackedRaceResolver.class), null);
OneDesignRankingMetric::new, mock(RaceLogAndTrackedRaceResolver.class), /* trackingConnectorInfo */ null);
trackedRace.attachRaceLog(raceLog);
final TimePoint[] oldAndNewStartTimeNotifiedByRace = new TimePoint[2];
trackedRace.addListener(new AbstractRaceChangeListener() {
@@ -206,7 +206,7 @@ public class TrackedRaceStartTimeInferenceTest extends AbstractGPSFixStoreTest {
final DynamicTrackedRaceImpl trackedRace = new DynamicTrackedRaceImpl(regatta, race,
Collections.<Sideline> emptyList(), EmptyWindStore.INSTANCE, 0, 0, 0,
/* useMarkPassingCalculator */ false,
OneDesignRankingMetric::new, mock(RaceLogAndTrackedRaceResolver.class), null);
OneDesignRankingMetric::new, mock(RaceLogAndTrackedRaceResolver.class), /* trackingConnectorInfo */ null);
final TimePoint[] oldAndNewStartTimeNotifiedByRace = new TimePoint[2];
trackedRace.addListener(new AbstractRaceChangeListener() {
@Override
@@ -254,7 +254,7 @@ public class TrackedRaceStartTimeInferenceTest extends AbstractGPSFixStoreTest {
final DynamicTrackedRaceImpl trackedRace = new DynamicTrackedRaceImpl(regatta, race,
Collections.<Sideline> emptyList(), EmptyWindStore.INSTANCE, 0, 0, 0,
/* useMarkPassingCalculator */ false,
OneDesignRankingMetric::new, mock(RaceLogAndTrackedRaceResolver.class), null);
OneDesignRankingMetric::new, mock(RaceLogAndTrackedRaceResolver.class), /* trackingConnectorInfo */ null);
trackedRace.attachRaceLog(raceLog);
trackedRace.attachRegattaLog(regattaLog);
final TimePoint[] newStartAndEndOfTrackingNotifiedByRace = new TimePoint[2];
@@ -369,7 +369,7 @@ public class TrackedRaceStartTimeInferenceTest extends AbstractGPSFixStoreTest {
final DynamicTrackedRaceImpl trackedRace = new DynamicTrackedRaceImpl(regatta, race,
Collections.<Sideline> emptyList(), EmptyWindStore.INSTANCE, 0, 0, 0,
/* useMarkPassingCalculator */ false,
OneDesignRankingMetric::new, mock(RaceLogAndTrackedRaceResolver.class), null);
OneDesignRankingMetric::new, mock(RaceLogAndTrackedRaceResolver.class), /* trackingConnectorInfo */ null);
trackedRace.attachRaceLog(raceLog);
final TimePoint[] oldAndNewStartTimeNotifiedByRace = new TimePoint[2];
trackedRace.addListener(new AbstractRaceChangeListener() {
@@ -109,10 +109,11 @@ public interface EventBase extends NamedWithID, WithDescription, Renamable, With
boolean setMediaURLs(Iterable<URL> imageURLs, Iterable<URL> sponsorImageURLs, Iterable<URL> videoURLs, URL logoImageURL, Map<URL, ImageSize> imageSizes);
/**
* Determines whether the race is tracked by TracTrac or not
* Gets all TrackingConnectorInfos containing information over what TrackingConnectors are involved in tracking this
* event
*
* @return a boolean flag, whether any {@link TrackedRace} in the event is tracked by which connector; the set
* returned is never {@code null} and never contains {@code null} values, but it may be empty
* @return a Set of {@link TrackingConnectorInfo}; the set returned is never {@code null} and never contains
* {@code null} values, but it may be empty
*/
Set<TrackingConnectorInfo> getTrackingConnectorInfos();
}
@@ -4,6 +4,15 @@ import java.io.Serializable;
import java.net.URL;
public interface TrackingConnectorInfo extends Serializable {
/**
* gets a String representation of the Tracking-Service used to Track the Race
*/
String getTrackedBy();
/**
* gets a {@link URL} representation of the web-URL associated with the Event;
* may be {@code null} if the API of the respective Tracking-Service does not provide a URL;
*/
URL getWebUrl();
}
@@ -317,7 +317,7 @@ public class CourseTest {
Collections.<Sideline> emptyList(), EmptyWindStore.INSTANCE, /* delayToLiveInMillis */3000,
/* millisecondsOverWhichToAverageWind */30000,
/* millisecondsOverWhichToAverageSpeed */8000, /*useMarkPassingCalculator*/ false, OneDesignRankingMetric::new,
mock(RaceLogAndTrackedRaceResolver.class), null);
mock(RaceLogAndTrackedRaceResolver.class), /* trackingConnectorInfo */ null);
assertLegStructure(course, trackedRace);
course.removeWaypoint(0);
assertLegStructure(course, trackedRace);
@@ -353,7 +353,7 @@ public class CourseTest {
EmptyWindStore.INSTANCE, /* delayToLiveInMillis */ 3000,
/* millisecondsOverWhichToAverageWind */ 30000,
/* millisecondsOverWhichToAverageSpeed */ 8000, /*useMarkPassingCalculator*/ false, OneDesignRankingMetric::new,
mock(RaceLogAndTrackedRaceResolver.class), null);
mock(RaceLogAndTrackedRaceResolver.class), /* trackingConnectorInfo */ null);
assertLegStructure(course, trackedRace);
final WaypointImpl wp1_5 = new WaypointImpl(new MarkImpl("Test Mark 1.5"));
assertWaypointIndexes(course);
@@ -87,7 +87,7 @@ public class CourseUpdateDuringNonAtomicSerializationTest implements Serializabl
trackedRace = new DynamicTrackedRaceImpl(trackedRegatta, race, Collections.<Sideline> emptySet(),
EmptyWindStore.INSTANCE,
/* delayToLiveInMillis */10000, /* millisecondsOverWhichToAverageWind */30000, /* millisecondsOverWhichToAverageSpeed */
7000, /*useMarkPassingCalculator*/ false, OneDesignRankingMetric::new, mock(RaceLogAndTrackedRaceResolver.class), null) {
7000, /*useMarkPassingCalculator*/ false, OneDesignRankingMetric::new, mock(RaceLogAndTrackedRaceResolver.class), /* trackingConnectorInfo */ null) {
private static final long serialVersionUID = 9114777576548711763L;
@Override
@@ -152,7 +152,7 @@ public class LeaderboardCourseChangeTest {
TrackedRace spyedTrackedRace = spy(new DynamicTrackedRaceImpl(mockedTrackedRegatta, mockedRace,
new HashSet<Sideline>(), EmptyWindStore.INSTANCE, 5000, 20000, 20000,
/* useMarkPassingCalculator */ false, OneDesignRankingMetric::new,
mock(RaceLogAndTrackedRaceResolver.class), null));
mock(RaceLogAndTrackedRaceResolver.class), /* trackingConnectorInfo */ null));
return spyedTrackedRace;
}
@@ -42,7 +42,7 @@ public class SerializeRankingMetricTest extends AbstractSerializationTest {
new RaceDefinitionImpl("Race", new CourseImpl("Course", Collections.<Waypoint>emptyList()) ,
/* boatClass */ _49er, Collections.<Competitor,Boat>emptyMap()),
Collections.<Sideline> emptyList(), EmptyWindStore.INSTANCE, 0l, 0l, 0l,
false, TimeOnTimeAndDistanceRankingMetric::new, null, null);
false, TimeOnTimeAndDistanceRankingMetric::new, null, /* trackingConnectorInfo */ null);
RankingMetric clone = cloneBySerialization(trackedRace.getRankingMetric(), DomainFactory.INSTANCE);
assertNotNull(clone);
assertTrue(clone instanceof TimeOnTimeAndDistanceRankingMetric);
@@ -91,7 +91,7 @@ public class StarbordSideOfStartLineRecognitionTest {
public MockedTrackedRaceImpl() {
super(null, null, Collections.<Sideline> emptyList(), null, 0, 0, 0, 0, false, OneDesignRankingMetric::new,
mock(RaceLogAndTrackedRaceResolver.class), /* tracking connector info */ null);
mock(RaceLogAndTrackedRaceResolver.class), /* trackingConnectorInfo */ null);
}
@Override
@@ -201,7 +201,7 @@ public abstract class TrackBasedTest {
/* delayToLiveInMillis */ 0,
/* millisecondsOverWhichToAverageWind */ 30000, /* millisecondsOverWhichToAverageSpeed */ 30000,
/* delay for wind estimation cache invalidation */ 0, useMarkPassingCalculator,
rankingMetricConstructor, raceLogResolver, null);
rankingMetricConstructor, raceLogResolver, /** trackingConnectorInfo **/ null);
// in this simplified artificial course, the top mark is exactly north of the right leeward gate
DegreePosition topPosition = new DegreePosition(54.48, 10.24);
TimePoint afterTheRace = new MillisecondsTimePoint(timePointForFixes.asMillis() + 36000000); // 10h after the fix timed
@@ -47,12 +47,13 @@ public class UpdateMarkPassingTest {
when(race.getBoatClass()).thenReturn(new BoatClassImpl("49er", /* typicallyStartsUpwind */ true));
when(race.getCompetitors()).thenReturn(Collections.singleton(competitor));
DynamicTrackedRaceImpl trackedRace = new DynamicTrackedRaceImpl(
/* trackedRegatta */new DynamicTrackedRegattaImpl(new RegattaImpl("test", null, true, CompetitorRegistrationType.CLOSED, null, null, new HashSet<Series>(), false, null,
"test", null, OneDesignRankingMetric::new,
/* registrationLinkSecret */ UUID.randomUUID().toString())),
race, Collections.<Sideline> emptyList(), EmptyWindStore.INSTANCE,
/* delayToLiveInMillis */1000, /* millisecondsOverWhichToAverageWind */30000,
/* millisecondsOverWhichToAverageSpeed */30000, /*useMarkPassingCalculator*/ false, OneDesignRankingMetric::new, mock(RaceLogAndTrackedRaceResolver.class), null);
/* trackedRegatta */new DynamicTrackedRegattaImpl(new RegattaImpl("test", null, true,
CompetitorRegistrationType.CLOSED, null, null, new HashSet<Series>(), false, null, "test", null,
OneDesignRankingMetric::new, /* registrationLinkSecret */ UUID.randomUUID().toString())),
race, Collections.<Sideline> emptyList(), EmptyWindStore.INSTANCE, /* delayToLiveInMillis */1000,
/* millisecondsOverWhichToAverageWind */30000, /* millisecondsOverWhichToAverageSpeed */30000,
/* useMarkPassingCalculator */ false, OneDesignRankingMetric::new,
mock(RaceLogAndTrackedRaceResolver.class), /* trackingConnectorInfo */ null);
TimePoint now = MillisecondsTimePoint.now();
TimePoint later = now.plus(1000);
trackedRace.updateMarkPassings(competitor, Arrays.asList(new MarkPassing[] { new MarkPassingImpl(now, waypoint, competitor) }));
@@ -317,7 +317,7 @@ public class WindTest {
EmptyWindStore.INSTANCE, /* delayToLiveInMillis */ 1000,
/* millisecondsOverWhichToAverageWind */ 30000,
/* millisecondsOverWhichToAverageSpeed */ 30000, /*useMarkPassingCalculator*/ false, OneDesignRankingMetric::new,
mock(RaceLogAndTrackedRaceResolver.class), null);
mock(RaceLogAndTrackedRaceResolver.class), /* trackingConnectorInfo */ null);
TimePoint start = MillisecondsTimePoint.now();
TimePoint topMarkRounding = start.plus(30000);
TimePoint finish = topMarkRounding.plus(30000);
@@ -106,7 +106,7 @@ public abstract class AbstractExportedPositionsBasedTest {
/* sidelines */ Collections.emptySet(),
EmptyWindStore.INSTANCE,
/* delayToLiveInMillis */ 3000, /* millisecondsOverWhichToAverageWind */ 15000, /* millisecondsOverWhichToAverageSpeed */ 10000,
/* useInternalMarkPassingAlgorithm */ true, OneDesignRankingMetric::new, /* raceLogResolver */ null, null);
/* useInternalMarkPassingAlgorithm */ true, OneDesignRankingMetric::new, /* raceLogResolver */ null, /* trackingConnectorInfo */ null);
result.setStatus(new TrackedRaceStatusImpl(TrackedRaceStatusEnum.LOADING, 0.0));
for (final Entry<CompetitorWithBoat, Iterable<GPSFixMoving>> e : competitorsAndTheirTracks.entrySet()) {
final DynamicGPSFixTrack<Competitor, GPSFixMoving> track = result.getTrack(e.getKey());
@@ -88,7 +88,7 @@ public class AbstractMockedRaceMarkPassingTest {
race = new DynamicTrackedRaceImpl(new DynamicTrackedRegattaImpl(r), raceDef, new ArrayList<Sideline>(),
new EmptyWindStore(), 0, 10000, 10000, /* useMarkPassingCalculator */ false,
OneDesignRankingMetric::new,
mock(RaceLogAndTrackedRaceResolver.class), null);
mock(RaceLogAndTrackedRaceResolver.class), /* trackingConnectorInfo */ null);
race.setStartTimeReceived(new MillisecondsTimePoint(10000));
TimePoint t = new MillisecondsTimePoint(30000);
List<Util.Pair<Mark, Position>> pos = Arrays.asList(new Util.Pair<Mark, Position>(m, new DegreePosition(0, 0)),
@@ -122,6 +122,6 @@ public class TrackedRegattaTest {
RaceDefinition race1 = new RaceDefinitionImpl(name, course, boatClass, Collections.emptyMap());
return new DynamicTrackedRaceImpl(regatta, race1, Collections.<Sideline> emptyList(),
EmptyWindStore.INSTANCE, 0, 0, 0, /* useMarkPassingCalculator */ false, OneDesignRankingMetric::new,
mock(RaceLogAndTrackedRaceResolver.class), /* tracking connector info */ null);
mock(RaceLogAndTrackedRaceResolver.class), /* trackingConnectorInfo */ null);
}
}
@@ -1249,8 +1249,8 @@ public interface TrackedRace
}
/**
* gets a String representation of the Tracking-Service used to Track the Race; may be {@code null}, particularly in
* test set-ups
* gets a {@link TrackingConnectorInfo}, which contains a String representation of the Tracking-Service used to Track the Race and a web-URL for the Event Event;
* may be {@code null}, particularly in test set-ups
*/
TrackingConnectorInfo getTrackingConnectorInfo();
}
@@ -106,7 +106,7 @@ public class TestStoringAndRetrievingWindTracksTest extends AbstractTracTracLive
public void addRaceDefinition(RaceDefinition race, DynamicTrackedRace trackedRace) {
}
}, /*useMarkPassingCalculator*/ false, mock(RaceLogAndTrackedRaceResolver.class),
Optional.empty(), null);
Optional.empty(), /* trackingConnectorInfo */ null);
WindSource windSource = new WindSourceImpl(WindSourceType.WEB);
MongoClient myFirstMongo = newMongo();
MongoDatabase firstDatabase = myFirstMongo.getDatabase(dbConfiguration.getDatabaseName());
@@ -84,7 +84,7 @@ public class StatisticsTest {
trackedRace = new DynamicTrackedRaceImpl(regatta, race, Collections.<Sideline>emptyList(),
EmptyWindStore.INSTANCE, 0, 0, 0, /* useMarkPassingCalculator */ false, OneDesignRankingMetric::new,
mock(RaceLogAndTrackedRaceResolver.class), null);
mock(RaceLogAndTrackedRaceResolver.class), /* trackingConnectorInfo */ null);
trackedRace.setStartOfTrackingReceived(new MillisecondsTimePoint(START_OF_TRACKING));
trackedRace.setEndOfTrackingReceived(new MillisecondsTimePoint(END_OF_TRACKING));
trackedRace.setStartTimeReceived(new MillisecondsTimePoint(START_OF_RACE));
@@ -138,7 +138,7 @@ public class ApplyScoresFromRaceLogTest extends LeaderboardScoringAndRankingTest
/* delayToLiveInMillis */ 5000, /* millisecondsOverWhichToAverageWind */ 15000,
/* millisecondsOverWhichToAverageSpeed */ 10000,
/* useInternalMarkPassingAlgorithm */ false, OneDesignRankingMetric::new,
/* raceLogResolver */ service, null);
/* raceLogResolver */ service, /* trackingConnectorInfo */ null);
final Fleet fleet = f1Column.getFleets().iterator().next();
f1Column.setTrackedRace(fleet, newF1);
// Now add a CompetitorResult to the race log:
@@ -90,7 +90,7 @@ public class RaceTrackerStartStopTest {
/* windStore */ EmptyWindStore.INSTANCE, /* delayToLiveInMillis */ 0l,
/* millisecondsOverWhichToAverageWind */ 0l,
/* millisecondsOverWhichToAverageSpeed */ 0l, /* raceDefinitionSetToUpdate */ null, /*useMarkPassingCalculator*/ false, mock(RaceLogAndTrackedRaceResolver.class),
Optional.empty(), null);
Optional.empty(), /* trackingConnectorInfo */ null);
regatta.addRace(raceDef2);
trackedRegatta1.createTrackedRace(raceDef2, Collections.<Sideline> emptyList(),
/* windStore */ EmptyWindStore.INSTANCE, /* delayToLiveInMillis */ 0l,
@@ -105,7 +105,7 @@ public class RemoveLeaderboardTest {
/* windStore */ EmptyWindStore.INSTANCE, /* delayToLiveInMillis */ 0l,
/* millisecondsOverWhichToAverageWind */ 0l,
/* millisecondsOverWhichToAverageSpeed */ 0l, /* raceDefinitionSetToUpdate */ null, /*useMarkPassingCalculator*/ false, mock(RaceLogAndTrackedRaceResolver.class),
Optional.empty(), null);
Optional.empty(), /* trackingConnectorInfo */ null);
}
@Test
@@ -23,6 +23,7 @@ public class EventUtilTest {
Calendar calendar = Calendar.getInstance();
calendar.set(year, month - 1, date);
MillisecondsTimePoint startEnd = new MillisecondsTimePoint(calendar.getTime());
return new StrippedEventImpl("Test", startEnd, startEnd, "Anywhere", true, UUID.randomUUID(), null, Collections.emptySet());
return new StrippedEventImpl("Test", startEnd, startEnd, "Anywhere", true, UUID.randomUUID(),
/** leaderBoardGroups **/ null, /** trackingConnectorInfos **/ Collections.emptySet());
}
}