aboutsummaryrefslogtreecommitdiff
path: root/gnu/testlet/java/awt/geom/Rectangle2D/Float/createIntersection.java
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/testlet/java/awt/geom/Rectangle2D/Float/createIntersection.java')
-rw-r--r--gnu/testlet/java/awt/geom/Rectangle2D/Float/createIntersection.java75
1 files changed, 75 insertions, 0 deletions
diff --git a/gnu/testlet/java/awt/geom/Rectangle2D/Float/createIntersection.java b/gnu/testlet/java/awt/geom/Rectangle2D/Float/createIntersection.java
new file mode 100644
index 00000000..b40a519b
--- /dev/null
+++ b/gnu/testlet/java/awt/geom/Rectangle2D/Float/createIntersection.java
@@ -0,0 +1,75 @@
+//Tags: JDK1.2
+
+//Copyright (C) 2004 David Gilbert <david.gilbert@object-refinery.com>
+
+//Mauve is free software; you can redistribute it and/or modify
+//it under the terms of the GNU General Public License as published by
+//the Free Software Foundation; either version 2, or (at your option)
+//any later version.
+
+//Mauve is distributed in the hope that it will be useful,
+//but WITHOUT ANY WARRANTY; without even the implied warranty of
+//MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+//GNU General Public License for more details.
+
+//You should have received a copy of the GNU General Public License
+//along with Mauve; see the file COPYING. If not, write to
+//the Free Software Foundation, 59 Temple Place - Suite 330,
+//Boston, MA 02111-1307, USA. */
+
+package gnu.testlet.java.awt.geom.Rectangle2D.Float;
+
+import gnu.testlet.TestHarness;
+import gnu.testlet.Testlet;
+
+import java.awt.geom.Rectangle2D;
+
+/**
+ * Some checks for the createIntersection() method in the
+ * {@link Rectangle2D.Float} class.
+ */
+public class createIntersection implements Testlet
+{
+
+ /**
+ * Runs the test using the specified harness.
+ *
+ * @param harness the test harness (<code>null</code> not permitted).
+ */
+ public void test(TestHarness harness)
+ {
+ // empty rectangles
+ Rectangle2D r0 = new Rectangle2D.Float();
+ Rectangle2D r1 = r0.createIntersection(new Rectangle2D.Float());
+ harness.check(r1.getX(), 0.0);
+ harness.check(r1.getY(), 0.0);
+ harness.check(r1.getWidth(), 0.0);
+ harness.check(r1.getHeight(), 0.0);
+
+ // regular intersection
+ r0 = new Rectangle2D.Float(1.0f, 2.0f, 3.0f, 4.0f);
+ r1 = new Rectangle2D.Float(1.5f, 2.5f, 3.5f, 4.5f);
+ Rectangle2D r2 = r0.createIntersection(r1);
+ harness.check(r2.getX(), 1.5);
+ harness.check(r2.getY(), 2.5);
+ harness.check(r2.getWidth(), 2.5);
+ harness.check(r2.getHeight(), 3.5);
+
+ // no intersection
+ r0 = new Rectangle2D.Float(1.0f, 1.0f, 1.0f, 1.0f);
+ r1 = new Rectangle2D.Float(3.0f, 3.0f, 1.0f, 1.0f);
+ r2 = r0.createIntersection(r1);
+
+ // strictly speaking, the spec only says that 'r2' should be
+ // empty...
+ harness.check(r2.isEmpty());
+
+ // ...but let's check the actual numbers anyway for the sake
+ // of compatibility.
+ harness.check(r2.getX(), 3.0);
+ harness.check(r2.getY(), 3.0);
+ harness.check(r2.getWidth(), -1.0);
+ harness.check(r2.getHeight(), -1.0);
+ }
+
+}