public void testCreateIntersection() {
   assertEquals(
       new Rectangle2D.Float(1, 2, -1, -2),
       r.createIntersection(new Rectangle2D.Float())); // Empty
   assertEquals(
       new Rectangle2D.Double(1, 2, 3, 4),
       r.createIntersection(new Rectangle2D.Double(1, 2, 3, 4))); // The same
   assertEquals(
       new Rectangle2D.Float(2, 3, 1, 2),
       r.createIntersection(new Rectangle2D.Float(2, 3, 1, 2))); // Inside
   assertEquals(
       new Rectangle2D.Double(5, 7, -1, -1),
       r.createIntersection(new Rectangle2D.Double(5, 7, 1, 2))); // Outside
   assertEquals(
       new Rectangle2D.Float(2, 3, 2, 3),
       r.createIntersection(new Rectangle2D.Float(2, 3, 5, 6))); // Intersect
   assertEquals(
       new Rectangle2D.Double(1, 2, 3, 4),
       r.createIntersection(new Rectangle2D.Double(0, 0, 5, 6))); // Cover
 }