package org.openbakery.racecontrol.data; import java.util.List; import org.openbakery.racecontrol.data.Driver; import org.openbakery.racecontrol.data.RaceEntry; import org.openbakery.racecontrol.data.Result; import org.testng.annotations.Test; public class RaceEntryResultTest { @Test public void qualifyingResultTest() { RaceEntry entry = new RaceEntry(); entry.addResult(createQualifyingResult(10), createDriver(0)); entry.addResult(createQualifyingResult(11), createDriver(1)); List<Result> results = entry.getResults(); assert 2 == results.size(); assert results.get(0).getBestLapTime() == 10; assert results.get(1).getBestLapTime() == 11; } @Test public void qualifyingResultTestReverse() { RaceEntry entry = new RaceEntry(); entry.addResult(createQualifyingResult(11), createDriver(0)); entry.addResult(createQualifyingResult(10), createDriver(1)); entry.addResult(createQualifyingResult(9), createDriver(2)); List<Result> results = entry.getResults(); assert 3 == results.size(); assert results.get(0).getBestLapTime() == 9; assert results.get(1).getBestLapTime() == 10; assert results.get(2).getBestLapTime() == 11; assert results.get(0).getPosition() == 1; assert results.get(1).getPosition() == 2; assert results.get(2).getPosition() == 3; } @Test public void qualifyingResultTestSame() { RaceEntry entry = new RaceEntry(); Driver first = createDriver(0); Driver second = createDriver(1); entry.addResult(createQualifyingResult(10), first); entry.addResult(createQualifyingResult(10), second); List<Result> results = entry.getResults(); assert 2 == results.size(); assert first.getResult().getPosition() == 1; assert second.getResult().getPosition() == 2; } private Result createQualifyingResult(int time) { Result result = new Result(); result.setBestLapTime(time); result.setRaceTime(0); result.setPosition(1); result.setLapsCompleted(0); return result; } private Driver createDriver(int id) { Driver driver = new Driver(0); driver.setConnectionId(0); driver.setPlayerId(id); driver.setName(Integer.toString(id)); return driver; } }