aboutsummaryrefslogtreecommitdiffstats
path: root/test/java
diff options
context:
space:
mode:
Diffstat (limited to 'test/java')
-rw-r--r--test/java/org/apache/fop/render/intermediate/BorderPainterTestCase.java39
1 files changed, 26 insertions, 13 deletions
diff --git a/test/java/org/apache/fop/render/intermediate/BorderPainterTestCase.java b/test/java/org/apache/fop/render/intermediate/BorderPainterTestCase.java
index fab6e0f4c..ab5c18c9e 100644
--- a/test/java/org/apache/fop/render/intermediate/BorderPainterTestCase.java
+++ b/test/java/org/apache/fop/render/intermediate/BorderPainterTestCase.java
@@ -154,8 +154,6 @@ public class BorderPainterTestCase {
protected final BorderPainter sut;
- private final T thisInstance;
-
private final BorderPropsBuilder<T> beforeBuilder;
private final BorderPropsBuilder<T> afterBuilder;
@@ -165,19 +163,20 @@ public class BorderPainterTestCase {
private final BorderPropsBuilder<T> endBuilder;
public BorderPainterTester(int xOrigin, int yOrigin, int width, int height) {
- this.thisInstance = (T) this;
if (width <= 0 || height <= 0) {
throw new IllegalArgumentException("Cannot test degenerate borders");
}
- beforeBuilder = new BorderPropsBuilder<T>(this.thisInstance);
- afterBuilder = new BorderPropsBuilder<T>(this.thisInstance);
- startBuilder = new BorderPropsBuilder<T>(this.thisInstance);
- endBuilder = new BorderPropsBuilder<T>(this.thisInstance);
+ beforeBuilder = new BorderPropsBuilder<T>(getThis());
+ afterBuilder = new BorderPropsBuilder<T>(getThis());
+ startBuilder = new BorderPropsBuilder<T>(getThis());
+ endBuilder = new BorderPropsBuilder<T>(getThis());
this.borderExtent = new Rectangle(xOrigin, yOrigin, width, height);
this.graphicsPainter = mock(GraphicsPainter.class);
this.sut = new BorderPainter(graphicsPainter);
}
+ protected abstract T getThis();
+
public BorderPropsBuilder<T> beforeBorder() {
return beforeBuilder;
}
@@ -199,7 +198,7 @@ public class BorderPainterTestCase {
endBuilder.setWidth(width);
afterBuilder.setWidth(width);
startBuilder.setWidth(width);
- return thisInstance;
+ return getThis();
}
public T setCornerRadii(int radius) {
@@ -211,31 +210,31 @@ public class BorderPainterTestCase {
setEndBefore(xRadius, yRadius);
setEndAfter(xRadius, yRadius);
setStartAfter(xRadius, yRadius);
- return thisInstance;
+ return getThis();
}
public T setStartBefore(int xRadius, int yRadius) {
startBuilder.setRadiusStart(xRadius);
beforeBuilder.setRadiusStart(yRadius);
- return thisInstance;
+ return getThis();
}
public T setEndBefore(int xRadius, int yRadius) {
endBuilder.setRadiusStart(xRadius);
beforeBuilder.setRadiusEnd(yRadius);
- return thisInstance;
+ return getThis();
}
public T setEndAfter(int xRadius, int yRadius) {
endBuilder.setRadiusEnd(xRadius);
afterBuilder.setRadiusEnd(yRadius);
- return thisInstance;
+ return getThis();
}
public T setStartAfter(int xRadius, int yRadius) {
startBuilder.setRadiusEnd(xRadius);
afterBuilder.setRadiusStart(yRadius);
- return thisInstance;
+ return getThis();
}
public final void test() throws IOException {
@@ -383,7 +382,11 @@ public class BorderPainterTestCase {
verify(graphicsPainter, times(numBorders)).closePath();
verify(graphicsPainter, times(numBorders)).restoreGraphicsState();
verify(graphicsPainter, times(numBorders)).clip();
+ }
+ @Override
+ protected DrawRectangularBordersTester getThis() {
+ return this;
}
}
@@ -462,6 +465,11 @@ public class BorderPainterTestCase {
return yWidth > yRadius ? yWidth : xWidth > 0 ? Math.max(xRadius, xWidth) : 0;
}
+ @Override
+ protected DrawRoundedBordersTester getThis() {
+ return this;
+ }
+
}
private static final class ClipBackgroundTester extends BorderPainterTester<ClipBackgroundTester> {
@@ -559,6 +567,11 @@ public class BorderPainterTestCase {
}
}
}
+
+ @Override
+ protected ClipBackgroundTester getThis() {
+ return this;
+ }
}