LongRangeSource
annotation class LongRangeSource(val min: Long, val max: Long, val increment: Long = 1, val ascending: Boolean = true)
Annotation to indicate that the annotated long parameter should be populated with a long range from min to max with an increment step in the ascending direction.
Samples
/**
* This will generate 300 tests with the values 1 to 300
* The values will be in ascending order
*/
@GeneratedParametersTest
fun testLongRangeSource(@LongRangeSource(min = 1, max = 300) value: Int) {
assertThat(value).isBetween(1, 300)
}
/**
* This will generate 149 tests with the values 1 to 300 with an increment of 2
* The values will be in ascending order
*/
@GeneratedParametersTest
fun testLongRangeSourceWithIncrement(@LongRangeSource(min = 1, max = 300, increment = 2) value: Int) {
assertThat(value).all {
isBetween(1, 300)
isOdd()
}
}
/**
* This will generate 149 tests with the values 1 to 300 with an increment of 2
* The values will be in ascending order
*/
@GeneratedParametersTest
fun testLongRangeSourceWithIncrementDescending(
@LongRangeSource(
min = 1,
max = 300,
increment = 2,
ascending = false
) value: Int
) {
assertThat(value).all {
isBetween(1, 300)
isOdd()
}
}Content copied to clipboard