/** * Copyright (c) 2009, iPlant Collaborative, Texas Advanced Computing Center * This software is licensed under the CC-GNU GPL version 2.0 or later. * License: http://creativecommons.org/licenses/GPL/2.0/ */ package org.iplantc.phyloviewer.shared.math; import junit.framework.TestCase; import org.iplantc.phyloviewer.shared.math.Box2D; import org.iplantc.phyloviewer.shared.math.Vector2; import org.junit.Test; public class TestBox2D extends TestCase { @Test public void testValid() { Box2D invalid=new Box2D(); assertFalse(invalid.valid()); Box2D valid=new Box2D(new Vector2(0,0), new Vector2(1,1)); assertTrue(valid.valid()); } @Test public void testExpandByVector2() { Box2D box=new Box2D(); box.expandBy(new Vector2(0,0)); box.expandBy(new Vector2(1,1)); assertTrue(0==box.getMin().getX()); assertTrue(0==box.getMin().getY()); assertTrue(1==box.getMax().getX()); assertTrue(1==box.getMax().getY()); } @Test public void testExpandByBox2D() { Box2D box0=new Box2D(new Vector2(0,0), new Vector2(1,1)); Box2D box1=new Box2D(new Vector2(0,0), new Vector2(2,2)); box0.expandBy(box1); assertTrue(0==box0.getMin().getX()); assertTrue(0==box0.getMin().getY()); assertTrue(2==box0.getMax().getX()); assertTrue(2==box0.getMax().getY()); } @Test public void testIntersects() { Box2D box0=new Box2D(new Vector2(0,0), new Vector2(1,1)); Box2D box1=new Box2D(new Vector2(0.25,0.25), new Vector2(0.5,0.5)); Box2D box2=new Box2D(new Vector2(1.25,1.25), new Vector2(1.5,1.5)); assertTrue(box0.intersects(box1)); assertFalse(box0.intersects(box2)); } @Test public void testContains() { Box2D box=new Box2D(new Vector2(0,0),new Vector2(10,10)); assertFalse(box.contains(new Vector2(-5,-5))); assertTrue(box.contains(new Vector2(5,5))); assertTrue(box.contains(new Vector2(0,10))); assertFalse(box.contains(new Vector2(20,20))); } }