This is an automated email from the ASF dual-hosted git repository.

erans pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-geometry.git

commit 1f52ccfbe29d5b1149ef9d03bd94ece8e5b667fa
Author: Steven Fontaine <[email protected]>
AuthorDate: Tue Sep 24 16:48:17 2019 -0500

    Add unit tests
---
 .../geometry/euclidean/oned/Vector1DTest.java      | 31 ++++++++++++++++++++++
 .../geometry/euclidean/threed/Vector3DTest.java    | 29 ++++++++++++++++++++
 .../geometry/euclidean/twod/Vector2DTest.java      | 31 ++++++++++++++++++++++
 3 files changed, 91 insertions(+)

diff --git 
a/commons-geometry-euclidean/src/test/java/org/apache/commons/geometry/euclidean/oned/Vector1DTest.java
 
b/commons-geometry-euclidean/src/test/java/org/apache/commons/geometry/euclidean/oned/Vector1DTest.java
index e3b015d..377b1fd 100644
--- 
a/commons-geometry-euclidean/src/test/java/org/apache/commons/geometry/euclidean/oned/Vector1DTest.java
+++ 
b/commons-geometry-euclidean/src/test/java/org/apache/commons/geometry/euclidean/oned/Vector1DTest.java
@@ -113,6 +113,16 @@ public class Vector1DTest {
     }
 
     @Test
+    public void testNorm_unitVectors()
+    {
+        // arrange
+        Vector1D v = Vector1D.of(2.0).normalize();
+        
+        // act/assert
+        Assert.assertEquals(1.0, v.norm(), TEST_TOLERANCE);
+    }
+
+    @Test
     public void testNormSq() {
         // act/assert
         Assert.assertEquals(0.0, Vector1D.of(0).normSq(), TEST_TOLERANCE);
@@ -121,6 +131,16 @@ public class Vector1DTest {
     }
 
     @Test
+    public void testNormSq_unitVectors()
+    {
+        // arrange
+        Vector1D v = Vector1D.of(2.0).normalize();
+        
+        // act/assert
+        Assert.assertEquals(1.0, v.normSq(), TEST_TOLERANCE);
+    }
+
+    @Test
     public void testWithNorm() {
         // act/assert
         checkVector(Vector1D.ONE.withNorm(0.0), 0.0);
@@ -262,6 +282,17 @@ public class Vector1DTest {
     }
 
     @Test
+    public void testNegate_unitVectors() {
+        // arrange
+        Vector1D v1 = Vector1D.of(0.1).normalize();
+        Vector1D v2 = Vector1D.of(-0.1).normalize();
+
+        // act/assert
+        checkVector(v1.negate(), -1);
+        checkVector(v2.negate(), 1);
+    }
+
+    @Test
     public void testScalarMultiply() {
         // act/assert
         checkVector(Vector1D.of(1).multiply(3), 3);
diff --git 
a/commons-geometry-euclidean/src/test/java/org/apache/commons/geometry/euclidean/threed/Vector3DTest.java
 
b/commons-geometry-euclidean/src/test/java/org/apache/commons/geometry/euclidean/threed/Vector3DTest.java
index 0bb73ab..b8bc4bd 100644
--- 
a/commons-geometry-euclidean/src/test/java/org/apache/commons/geometry/euclidean/threed/Vector3DTest.java
+++ 
b/commons-geometry-euclidean/src/test/java/org/apache/commons/geometry/euclidean/threed/Vector3DTest.java
@@ -159,6 +159,15 @@ public class Vector3DTest {
         Assert.assertEquals(Math.sqrt(29), Vector3D.of(2, 3, 4).norm(), EPS);
         Assert.assertEquals(Math.sqrt(29), Vector3D.of(-2, -3, -4).norm(), 
EPS);
     }
+    
+    @Test
+    public void testNorm_unitVectors() {
+        // arrange
+        Vector3D v = Vector3D.of(1.0, 2.0, 3.0).normalize();
+        
+        // act/assert
+        Assert.assertEquals(1.0, v.norm(), EPS);
+    }
 
     @Test
     public void testNormSq() {
@@ -167,6 +176,15 @@ public class Vector3DTest {
         Assert.assertEquals(29, Vector3D.of(2, 3, 4).normSq(), EPS);
         Assert.assertEquals(29, Vector3D.of(-2, -3, -4).normSq(), EPS);
     }
+    
+    @Test
+    public void testNormSq_unitVectors() {
+        // arrange
+        Vector3D v = Vector3D.of(1.0, 2.0, 3.0).normalize();
+        
+        // act/assert
+        Assert.assertEquals(1.0, v.normSq(), EPS);
+    }
 
     @Test
     public void testWithNorm() {
@@ -314,6 +332,17 @@ public class Vector3DTest {
     }
 
     @Test
+    public void testNegate_unitVectors() {
+        // arrange
+        Vector3D v1 = Vector3D.of(1.0, 2.0, 3.0).normalize();
+        Vector3D v2 = Vector3D.of(-2.0, -4.0, -3.0).normalize();
+        
+        // act/assert
+        checkVector(v1.negate(), -1.0 / Math.sqrt(14.0), -Math.sqrt(2.0 / 
7.0), -3.0 / Math.sqrt(14.0));
+        checkVector(v2.negate(), 2.0 / Math.sqrt(29.0), 4.0 / Math.sqrt(29.0), 
3.0 / Math.sqrt(29.0));
+    }
+
+    @Test
     public void testNormalize() {
         // arrange
         double invSqrt3 = 1 / Math.sqrt(3);
diff --git 
a/commons-geometry-euclidean/src/test/java/org/apache/commons/geometry/euclidean/twod/Vector2DTest.java
 
b/commons-geometry-euclidean/src/test/java/org/apache/commons/geometry/euclidean/twod/Vector2DTest.java
index d27e615..2e6ec80 100644
--- 
a/commons-geometry-euclidean/src/test/java/org/apache/commons/geometry/euclidean/twod/Vector2DTest.java
+++ 
b/commons-geometry-euclidean/src/test/java/org/apache/commons/geometry/euclidean/twod/Vector2DTest.java
@@ -144,6 +144,15 @@ public class Vector2DTest {
     }
 
     @Test
+    public void testNorm_unitVectors() {
+        // arrange
+        Vector2D v = Vector2D.of(2.0, 3.0).normalize();
+
+        // act/assert
+        Assert.assertEquals(1.0, v.norm(), EPS);
+    }
+
+    @Test
     public void testNormSq() {
         // act/assert
         Assert.assertEquals(0.0, Vector2D.of(0, 0).normSq(), EPS);
@@ -157,6 +166,15 @@ public class Vector2DTest {
     }
 
     @Test
+    public void testNormSq_unitVectors() {
+        // arrange
+        Vector2D v = Vector2D.of(2.0, 3.0).normalize();
+
+        // act/assert
+        Assert.assertEquals(1.0, v.normSq(), EPS);
+    }
+
+    @Test
     public void testWithNorm() {
         // act/assert
         checkVector(Vector2D.of(3, 4).withNorm(1.0), 0.6, 0.8);
@@ -309,6 +327,19 @@ public class Vector2DTest {
     }
 
     @Test
+    public void testNegate_unitVectors() {
+        // arrange
+        Vector2D v1 = Vector2D.of(1.0, 1.0).normalize();
+        Vector2D v2 = Vector2D.of(-1.0, -2.0).normalize();
+        Vector2D v3 = Vector2D.of(2.0, -3.0).normalize();
+ 
+        // act/assert
+        checkVector(v1.negate(), -1.0 / Math.sqrt(2.0), -1.0 / Math.sqrt(2.0));
+        checkVector(v2.negate(), 1.0 / Math.sqrt(5.0), 2.0 / Math.sqrt(5.0));
+        checkVector(v3.negate(), -2.0 / Math.sqrt(13.0), 3.0 / 
Math.sqrt(13.0));
+    }
+
+    @Test
     public void testScalarMultiply() {
         // act/assert
         checkVector(Vector2D.of(1, 2).multiply(0), 0, 0);

Reply via email to