blob: d4a33d3164607fa53fc58c8055e1f36d09d66805 [file] [log] [blame]
package org.eclipse.nebula.widgets.nattable.core.layer
import java.io.Serializable
import java.util.List
import org.eclipse.nebula.widgets.nattable.core.layer.axis.Axis
import static org.junit.Assert.*
import static extension org.eclipse.nebula.widgets.nattable.core.layer.axis.AxisInvariants.*
class AxisTest {
static def testAxis(String axisName, Axis axis, List<? extends Serializable> expectedIds, List<Integer> expectedPixels) {
// Axis
assertEquals('''«axisName».getSegmentCount''', expectedIds.size, axis.segmentCount)
for (segmentPosition : 0 .. axis.segmentCount)
assertEquals('''«axisName».getStartPixelOfSegmentPosition(«segmentPosition»)''', expectedPixels.get(segmentPosition), axis.getStartPixelOfSegmentPosition(segmentPosition))
for (segmentPosition : 0 ..< axis.segmentCount) {
val pixelLocation = expectedPixels.get(segmentPosition)
assertEquals('''«axisName».getSegmentPositionOfPixelLocation(«pixelLocation»)''', segmentPosition, axis.getSegmentPositionOfPixelLocation(pixelLocation))
}
for (segmentPosition : 0 ..< axis.segmentCount)
assertEquals('''«axisName».getIdOfSegmentPosition(«segmentPosition»)''', expectedIds.get(segmentPosition), axis.getIdOfSegmentPosition(segmentPosition))
for (segmentId : expectedIds)
assertEquals('''«axisName».getSegmentPositionOfId(«segmentId»)''', expectedIds.indexOf(segmentId), axis.getSegmentPositionOfId(segmentId))
// Axis invariants
assertEquals('''«axisName».pixelSize''', expectedPixels.get(expectedPixels.size - 1), axis.pixelSize)
}
}