From c9cea043bb51fe8125e1bd50ade2007c908991f9 Mon Sep 17 00:00:00 2001
From: Oliver Sander <sander@igpm.rwth-aachen.de>
Date: Mon, 30 May 2011 06:47:33 +0000
Subject: [PATCH] also test UnitVector<4>

[[Imported from SVN: r7343]]
---
 test/unitvectortest.cc |  1 +
 test/valuefactory.hh   | 32 ++++++++++++++++++++++++++++++++
 2 files changed, 33 insertions(+)

diff --git a/test/unitvectortest.cc b/test/unitvectortest.cc
index dd68f7ee..78ee4268 100644
--- a/test/unitvectortest.cc
+++ b/test/unitvectortest.cc
@@ -350,6 +350,7 @@ int main() try
 {
     testUnitVector<2>();
     testUnitVector<3>();
+    testUnitVector<4>();
 
     testRotation3d();
 } catch (Exception e) {
diff --git a/test/valuefactory.hh b/test/valuefactory.hh
index 1fcecb46..73bb9469 100644
--- a/test/valuefactory.hh
+++ b/test/valuefactory.hh
@@ -77,6 +77,38 @@ public:
 };
 
 
+/** \brief A class that creates sets of values of various types, to be used in unit tests
+ * 
+ * This is the specialization for UnitVector<4>
+ */
+template <>
+class ValueFactory<UnitVector<4> >
+{
+public:
+    static void get(std::vector<UnitVector<4> >& values) {
+     
+        int nTestPoints = 10;
+        double testPoints[10][4] = {{1,0,0,0}, {0,1,0,0}, {-0.838114,0.356751,-0.412667,0.5},
+                                    {-0.490946,-0.306456,0.81551,0.23},{-0.944506,0.123687,-0.304319,-0.7},
+                                    {-0.6,0.1,-0.2,0.8},{0.45,0.12,0.517,0},
+                                    {-0.1,0.3,-0.1,0.73},{-0.444506,0.123687,0.104319,-0.23},{-0.7,-0.123687,-0.304319,0.72}};
+                                  
+
+        values.resize(nTestPoints);
+        
+        // Set up elements of S^1
+        for (int i=0; i<nTestPoints; i++) {
+        
+            Dune::array<double,4> w = {{testPoints[i][0], testPoints[i][1], testPoints[i][2], testPoints[i][3]}};
+            values[i] = UnitVector<4>(w);
+
+        }
+        
+    }
+    
+};
+
+
 /** \brief A class that creates sets of values of various types, to be used in unit tests
  * 
  * This is the specialization for Rotation<3>
-- 
GitLab