From aa3e420df5b7bf55a3d4910fdc859e5242254b34 Mon Sep 17 00:00:00 2001 From: Benoit Jacob Date: Sun, 6 Nov 2011 00:44:04 -0400 Subject: Add test for Matrix(x, y) ctor static assert added in previous changeset --- test/smallvectors.cpp | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) (limited to 'test/smallvectors.cpp') diff --git a/test/smallvectors.cpp b/test/smallvectors.cpp index 144944162..4c09d4ec6 100644 --- a/test/smallvectors.cpp +++ b/test/smallvectors.cpp @@ -22,6 +22,7 @@ // License and a copy of the GNU General Public License along with // Eigen. If not, see . +#define EIGEN_NO_STATIC_ASSERT #include "main.h" template void smallVectors() @@ -29,6 +30,7 @@ template void smallVectors() typedef Matrix V2; typedef Matrix V3; typedef Matrix V4; + typedef Matrix VX; Scalar x1 = internal::random(), x2 = internal::random(), x3 = internal::random(), @@ -45,6 +47,29 @@ template void smallVectors() VERIFY_IS_APPROX(x3, v3.z()); VERIFY_IS_APPROX(x3, v4.z()); VERIFY_IS_APPROX(x4, v4.w()); + + if (!NumTraits::IsInteger) + { + VERIFY_RAISES_ASSERT(V3(2, 1)) + VERIFY_RAISES_ASSERT(V3(3, 2)) + VERIFY_RAISES_ASSERT(V3(Scalar(3), 1)) + VERIFY_RAISES_ASSERT(V3(3, Scalar(1))) + VERIFY_RAISES_ASSERT(V3(Scalar(3), Scalar(1))) + VERIFY_RAISES_ASSERT(V3(Scalar(123), Scalar(123))) + + VERIFY_RAISES_ASSERT(V4(1, 3)) + VERIFY_RAISES_ASSERT(V4(2, 4)) + VERIFY_RAISES_ASSERT(V4(1, Scalar(4))) + VERIFY_RAISES_ASSERT(V4(Scalar(1), 4)) + VERIFY_RAISES_ASSERT(V4(Scalar(1), Scalar(4))) + VERIFY_RAISES_ASSERT(V4(Scalar(123), Scalar(123))) + + VERIFY_RAISES_ASSERT(VX(3, 2)) + VERIFY_RAISES_ASSERT(VX(Scalar(3), 1)) + VERIFY_RAISES_ASSERT(VX(3, Scalar(1))) + VERIFY_RAISES_ASSERT(VX(Scalar(3), Scalar(1))) + VERIFY_RAISES_ASSERT(VX(Scalar(123), Scalar(123))) + } } void test_smallvectors() -- cgit v1.2.3