@Test
public void testGrowRect() {

    LOG.info("testGrowRect");
    final GeoRectangle a1 = new GeoRectangle(new GeoPoint(0.0, 0.0), new GeoPoint(1.0, 1.0));
    final GeoRectangle a2 = new GeoRectangle(new GeoPoint(1.0, 1.0), new GeoPoint(2.0, 2.0));
    final GeoRectangle a3 = new GeoRectangle(new GeoPoint(1.0, 1.0), new GeoPoint(3.0, 3.0));
    final GeoRectangle a4 = new GeoRectangle(new GeoPoint(-1.0, -1.0), new GeoPoint(4.0, 4.0));
    final GeoRectangle a5 = new GeoRectangle(new GeoPoint(0.2, 0.3), new GeoPoint(0.4, 0.5));
    final GeoRectangle a6 = new GeoRectangle(new GeoPoint(-1.0, 0.0), new GeoPoint(0.3, 0.5));
    final GeoRectangle a7 = new GeoRectangle(new GeoPoint(0.5, 0.5), new GeoPoint(3.0, 4.0));
    final GeoRectangle b1 = new GeoRectangle(new GeoPoint(0.0, 0.0), new GeoPoint(2.0, 2.0));
    final GeoRectangle b2 = new GeoRectangle(new GeoPoint(0.0, 0.0), new GeoPoint(3.0, 3.0));
    final GeoRectangle b3 = new GeoRectangle(new GeoPoint(0.0, 0.0), new GeoPoint(1.0, 1.0));
    final GeoRectangle b4 = new GeoRectangle(new GeoPoint(-1.0, 0.0), new GeoPoint(1.0, 1.0));
    final GeoRectangle b5 = new GeoRectangle(new GeoPoint(0.0, 0.0), new GeoPoint(3.0, 4.0));
    Assert.assertEquals(b1, a1.grow(a2));
    Assert.assertEquals(b2, a1.grow(a3));
    Assert.assertEquals(a4, a1.grow(a4));
    Assert.assertEquals(b3, a1.grow(a5));
    Assert.assertEquals(b4, a1.grow(a6));
    Assert.assertEquals(b5, a1.grow(a7));
}