From 66ab6c8fa44025d8dacbb410a25cbf9e4f7faa3d Mon Sep 17 00:00:00 2001
From: Paul McCarthy <pauldmccarthy@gmail.com>
Date: Sun, 23 Jul 2017 11:50:48 +0100
Subject: [PATCH] Unit test for vector option

---
 tests/test_transform.py | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/tests/test_transform.py b/tests/test_transform.py
index cfd71186f..890becea6 100644
--- a/tests/test_transform.py
+++ b/tests/test_transform.py
@@ -322,6 +322,28 @@ def test_transform():
         transform.transform(badcoords[:, (1, 2, 3)], xform, axes=[1, 2])
 
 
+def test_transform_vector(seed):
+
+    # Some transform with a
+    # translation component
+    xform = transform.compose([1, 2, 3],
+                              [5, 10, 15],
+                              [np.pi / 2, np.pi / 2, 0])
+
+    vecs = np.random.random((20, 3))
+
+    for v in vecs:
+
+        vecExpected = np.dot(xform, list(v) + [0])[:3]
+        ptExpected  = np.dot(xform, list(v) + [1])[:3]
+
+        vecResult = transform.transform(v, xform, vector=True)
+        ptResult  = transform.transform(v, xform, vector=False)
+
+        assert np.all(np.isclose(vecExpected, vecResult))
+        assert np.all(np.isclose(ptExpected,  ptResult))
+
+
 def test_flirtMatrixToSform():
 
     testfile = op.join(datadir, 'test_transform_test_flirtMatrixToSform.txt')
-- 
GitLab