Skip to content

Commit 5ca6f43

Browse files
Added missing test documentation.
1 parent 228205d commit 5ca6f43

File tree

3 files changed

+43
-5
lines changed

3 files changed

+43
-5
lines changed

stars-importer-carla/src/test/kotlin/tools/aqua/stars/importer/carla/IncompleteJSONLaneTest.kt

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ import tools.aqua.stars.data.av.dataclasses.Lane
2323
import tools.aqua.stars.data.av.dataclasses.Road
2424
import tools.aqua.stars.importer.carla.dataclasses.*
2525

26+
/** Tests behaviour on incomplete data from json. */
2627
class IncompleteJSONLaneTest {
2728

2829
private lateinit var incompleteBlock: Block
@@ -32,6 +33,7 @@ class IncompleteJSONLaneTest {
3233
private lateinit var jsonLanes: List<JsonLane>
3334
private lateinit var lanes: List<Lane>
3435

36+
/** Creates block, road and lane. */
3537
@BeforeTest
3638
fun setupData() {
3739
incompleteBlock = Block(id = "1", fileName = "", roads = listOf())
@@ -93,6 +95,7 @@ class IncompleteJSONLaneTest {
9395
lanes = listOf(incompleteLane)
9496
}
9597

98+
/** Tests [updateLanes] for incomplete [JsonLane] and [Lane]. */
9699
@Test
97100
fun checkUpdatingOfContactLaneInfos() {
98101
assertFailsWith<NoSuchElementException> { updateLanes(jsonLanes, lanes) }
@@ -103,6 +106,10 @@ class IncompleteJSONLaneTest {
103106
assertEquals(incompleteLane.yieldLanes.size, 0)
104107
}
105108

109+
/**
110+
* Tests that primitive attributes are equal on [JsonLane] [incompleteJsonLane] and [Lane]
111+
* [incompleteLane].
112+
*/
106113
@Test
107114
fun checkSettingOfPrimitiveAttributes() {
108115
assertEquals(incompleteJsonLane.laneId, incompleteLane.laneId)
@@ -112,6 +119,7 @@ class IncompleteJSONLaneTest {
112119
assertEquals(incompleteJsonLane.laneWidth, incompleteLane.laneWidth)
113120
}
114121

122+
/** Checks that missing intersection points are correctly recognized. */
115123
@Test
116124
fun checkSettingOfIntersectingLanes() {
117125
incompleteJsonLane.intersectingLanes.forEach { jsonContactInfo ->
@@ -123,6 +131,7 @@ class IncompleteJSONLaneTest {
123131
}
124132
}
125133

134+
/** Checks that missing contact points are correctly recognized. */
126135
@Test
127136
fun checkMissingLanes() {
128137
incompleteJsonLane.contactAreas.forEach { jsonContactArea ->

stars-importer-carla/src/test/kotlin/tools/aqua/stars/importer/carla/JSONLandmarkTest.kt

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,13 +23,19 @@ import kotlin.test.assertEquals
2323
import tools.aqua.stars.data.av.dataclasses.Landmark
2424
import tools.aqua.stars.importer.carla.dataclasses.*
2525

26+
/** Tests converter from [JsonLandmark] to [Landmark]. */
2627
class JSONLandmarkTest {
2728

29+
/** The [JsonLandmark] instance. */
2830
private lateinit var completeJsonLandmark: JsonLandmark
31+
32+
/** The [Landmark] instance. */
2933
private lateinit var completeLandmark: Landmark
30-
// private lateinit var jsonSpeedLimit: JsonLandmark
31-
// private lateinit var speedLimit: Landmark
3234

35+
/**
36+
* Creates a [JsonLandmark] [completeJsonLandmark] and converts it to a [Landmark]
37+
* [completeLandmark].
38+
*/
3339
@BeforeTest
3440
fun setup() {
3541
completeJsonLandmark =
@@ -58,6 +64,7 @@ class JSONLandmarkTest {
5864
completeLandmark = completeJsonLandmark.toLandmark()
5965
}
6066

67+
/** Asserts that all attributes in [completeJsonLandmark] equal those in [completeLandmark]. */
6168
@Test
6269
fun checkAttributeSetter() {
6370
assertEquals(completeJsonLandmark.id, completeLandmark.id)

stars-importer-carla/src/test/kotlin/tools/aqua/stars/importer/carla/JSONSpeedLimitTest.kt

Lines changed: 25 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,9 +24,11 @@ import kotlin.test.assertFailsWith
2424
import tools.aqua.stars.data.av.*
2525
import tools.aqua.stars.data.av.dataclasses.Lane
2626
import tools.aqua.stars.data.av.dataclasses.SpeedLimit
27+
import tools.aqua.stars.data.av.dataclasses.Vehicle
2728
import tools.aqua.stars.importer.carla.dataclasses.JsonLandmark
2829
import tools.aqua.stars.importer.carla.dataclasses.JsonLandmarkType
2930

31+
/** Tests various configurations of speed limits on a lane. */
3032
class JSONSpeedLimitTest {
3133

3234
private lateinit var jsonSpeedLimit1: JsonLandmark
@@ -35,6 +37,7 @@ class JSONSpeedLimitTest {
3537
private lateinit var speedLimitLane: Lane
3638
private lateinit var speedLimits: List<SpeedLimit>
3739

40+
/** Creates the speed limits, landmarks and the lane. */
3841
@BeforeTest
3942
fun setup() {
4043
jsonSpeedLimit1 = emptyJsonLandmark()
@@ -59,6 +62,10 @@ class JSONSpeedLimitTest {
5962
assertEquals(2, speedLimits.size)
6063
}
6164

65+
/**
66+
* Asserts that the landmark type is [JsonLandmarkType.MaximumSpeed], unit is "mph" and the values
67+
* are identical.
68+
*/
6269
@Test
6370
fun testMPHUnitConversion() {
6471
assertEquals(JsonLandmarkType.MaximumSpeed, jsonSpeedLimit1.type)
@@ -71,6 +78,7 @@ class JSONSpeedLimitTest {
7178
assertEquals(speedLimits[1].speedLimit, jsonLandmarks[1].value)
7279
}
7380

81+
/** Tests [getSpeedLimitsFromLandmarks] with unis "kmh". */
7482
@Test
7583
fun testOtherUnitConversions() {
7684
val jsonLandmark = emptyJsonLandmark()
@@ -84,6 +92,7 @@ class JSONSpeedLimitTest {
8492
assertEquals(30.0, resultSpeedLimits[0].speedLimit)
8593
}
8694

95+
/** Tests speed limits if multiple exists on the lane. */
8796
@Test
8897
fun testBoundariesForMultipleSpeedLimits() {
8998
assertEquals(10.0, speedLimits[0].fromDistanceFromStart)
@@ -93,6 +102,9 @@ class JSONSpeedLimitTest {
93102
assertEquals(40.0, speedLimits[1].toDistanceFromStart)
94103
}
95104

105+
/**
106+
* Tests that [JsonLandmark]s other than [JsonLandmarkType.MaximumSpeed] have a speed limit of 0.
107+
*/
96108
@Test
97109
fun testNonSpeedLimitLandmarks() {
98110
val invalidLandmarks: List<JsonLandmark> =
@@ -106,12 +118,13 @@ class JSONSpeedLimitTest {
106118

107119
assertEquals(0, getSpeedLimitsFromLandmarks(speedLimitLane, invalidLandmarks).size)
108120
}
109-
121+
/** Tests [getSpeedLimitsFromLandmarks] returns 0 if no landmark is given. */
110122
@Test
111123
fun testEmptyLandmarksList() {
112124
assertEquals(0, getSpeedLimitsFromLandmarks(speedLimitLane, listOf()).size)
113125
}
114126

127+
/** Tests [getSpeedLimitsFromLandmarks] from midpoint of lane. */
115128
@Test
116129
fun testSingleSpeedLimitBoundariesStartingInMidOfLane() {
117130
// Single SpeedLimit sign at s=10
@@ -126,6 +139,7 @@ class JSONSpeedLimitTest {
126139
assertEquals(speedLimitLane.laneLength, resultSpeedLimits[0].toDistanceFromStart)
127140
}
128141

142+
/** Tests [getSpeedLimitsFromLandmarks] from start of lane. */
129143
@Test
130144
fun testSingleSpeedLimitBoundariesStartingAtStartOfLane() {
131145
// Single SpeedLimit sign at s=0
@@ -140,6 +154,7 @@ class JSONSpeedLimitTest {
140154
assertEquals(speedLimitLane.laneLength, resultSpeedLimits[0].toDistanceFromStart)
141155
}
142156

157+
/** Tests [getSpeedLimitsFromLandmarks] from end of lane. Should throw [IllegalStateException]. */
143158
@Test
144159
fun testSingleSpeedLimitBoundariesStartingAtEndOfLane() {
145160
// Single SpeedLimit sign at s=lane_length
@@ -153,6 +168,10 @@ class JSONSpeedLimitTest {
153168
}
154169
}
155170

171+
/**
172+
* Tests [getSpeedLimitsFromLandmarks] from behind end of lane. Should throw
173+
* [IllegalStateException].
174+
*/
156175
@Test
157176
fun testSingleSpeedLimitBoundariesStartAfterEndOfLane() {
158177
// Single SpeedLimit sign at s=lane_length+1
@@ -166,6 +185,7 @@ class JSONSpeedLimitTest {
166185
}
167186
}
168187

188+
/** Tests [Vehicle.applicableSpeedLimit] for multiple speed limits on lane. */
169189
@Test
170190
fun testApplicableSpeedLimitsForVehicle() {
171191
val speedLimit1 =
@@ -174,10 +194,10 @@ class JSONSpeedLimitTest {
174194
SpeedLimit(speedLimit = 50.0, fromDistanceFromStart = 30.0, toDistanceFromStart = 50.0)
175195
val speedLimit3 =
176196
SpeedLimit(speedLimit = 80.0, fromDistanceFromStart = 50.0, toDistanceFromStart = 80.0)
177-
val vehicleLane = emptyLane()
197+
val vehicleLane: Lane = emptyLane()
178198
vehicleLane.speedLimits = listOf(speedLimit1, speedLimit2, speedLimit3)
179199

180-
val vehicle = emptyVehicle()
200+
val vehicle: Vehicle = emptyVehicle()
181201
vehicle.lane = vehicleLane
182202

183203
vehicle.positionOnLane = 0.0
@@ -208,6 +228,7 @@ class JSONSpeedLimitTest {
208228
assertEquals(null, vehicle.applicableSpeedLimit)
209229
}
210230

231+
/** Tests [Lane.speedAt] for multiple speed limits on lane. */
211232
@Test
212233
fun testSpeedAt() {
213234
val speedLimit1 =
@@ -229,6 +250,7 @@ class JSONSpeedLimitTest {
229250
assertEquals(30.0, lane.speedAt(80.0))
230251
}
231252

253+
/** Tests speed limit conversion from json. */
232254
@Test
233255
fun testSpeedLimitCreationFromJsonLaneConversion() {
234256
val jsonLane = emptyJsonLane()

0 commit comments

Comments
 (0)