@Test public void testValid() { final Ray3 ray1 = new Ray3(new Vector3(0, 0, 0), new Vector3(0, 0, 1)); final Ray3 ray2 = new Ray3(new Vector3(Double.POSITIVE_INFINITY, 0, 0), new Vector3(0, 0, 1)); final Ray3 ray3 = new Ray3(new Vector3(0, 0, 0), new Vector3(Double.POSITIVE_INFINITY, 0, 1)); assertTrue(Ray3.isValid(ray1)); assertFalse(Ray3.isValid(ray2)); assertFalse(Ray3.isValid(ray3)); assertFalse(Ray3.isValid(null)); // couple if equals validity tests assertEquals(ray1, ray1); assertFalse(ray1.equals(null)); assertFalse(ray1.equals(new Vector3())); // throw in a couple pool accesses for coverage final Ray3 ray4 = Ray3.fetchTempInstance(); ray4.set(ray1); assertEquals(ray1, ray4); assertNotSame(ray1, ray4); Ray3.releaseTempInstance(ray4); // cover more of equals assertFalse(ray1.equals(new Ray3(Vector3.ZERO, Vector3.NEG_UNIT_X))); }