blob: ee4bb1b00e5f5d253b3f31e95c9019fd6c215741 [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 {
def static testAxis(Axis axis, List<? extends Serializable> expectedIds, List<Double> expectedPixels) {
testAxis("", axis, expectedIds, expectedPixels)
}
def static testAxis(String axisName, Axis axis, List<? extends Serializable> expectedIds, List<Double> expectedPixels) {
// Segment count
assertEquals('''«axisName» getSegmentCount''', expectedIds.size, axis.segmentCount)
// Start pixel of segment position
for (segmentPosition : 0 .. expectedIds.size)
assertEquals('''«axisName» getStartPixelOfSegmentPosition(«segmentPosition»)''', expectedPixels.get(segmentPosition), axis.getStartPixelOfSegmentPosition(segmentPosition), 0)
// Segment position of pixel location
assertEquals('''«axisName» < range getSegmentPositionOfPixelLocation(«expectedPixels.get(0) - 1»)''', -1, axis.getSegmentPositionOfPixelLocation(expectedPixels.get(0) - 1))
for (segmentPosition : 0 ..< expectedIds.size) {
val pixelLocation = expectedPixels.get(segmentPosition)
assertEquals('''«axisName» getSegmentPositionOfPixelLocation(«pixelLocation»)''', segmentPosition, axis.getSegmentPositionOfPixelLocation(pixelLocation))
}
assertEquals('''«axisName» > range getSegmentPositionOfPixelLocation(«axis.pixelSize»)''', axis.segmentCount, axis.getSegmentPositionOfPixelLocation(axis.pixelSize))
// Id of segment position
for (segmentPosition : 0 ..< expectedIds.size)
assertEquals('''«axisName» getIdOfSegmentPosition(«segmentPosition»)''', expectedIds.get(segmentPosition), axis.getIdOfSegmentPosition(segmentPosition))
// Segment position of id
for (segmentId : expectedIds)
assertEquals('''«axisName» getSegmentPositionOfId(«segmentId»)''', expectedIds.indexOf(segmentId), axis.getSegmentPositionOfId(segmentId))
// Pixel size
assertEquals('''«axisName» pixelSize''', expectedPixels.get(expectedPixels.size - 1) - expectedPixels.get(0), axis.pixelSize, 0)
}
}