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