aboutsummaryrefslogtreecommitdiffhomepage
path: root/test
diff options
context:
space:
mode:
authorGravatar Christoph Hertzberg <chtz@informatik.uni-bremen.de>2019-05-10 14:57:05 +0200
committerGravatar Christoph Hertzberg <chtz@informatik.uni-bremen.de>2019-05-10 14:57:05 +0200
commit4ccd1ece92c58e0ee3a15a6a6f0af2b00b7829ab (patch)
treeb53c322db903ee288944e3a0c247684f144c7c6d /test
parentd3ef7cf03ed080fb5b35045b73812bb34c6119a3 (diff)
bug #1707: Fix deprecation warnings, or disable warnings when testing deprecated functions
Diffstat (limited to 'test')
-rw-r--r--test/triangular.cpp36
1 files changed, 33 insertions, 3 deletions
diff --git a/test/triangular.cpp b/test/triangular.cpp
index 0fca5e3b9..981a0d071 100644
--- a/test/triangular.cpp
+++ b/test/triangular.cpp
@@ -7,9 +7,35 @@
// Public License v. 2.0. If a copy of the MPL was not distributed
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#ifdef EIGEN_TEST_PART_100
+# define EIGEN_NO_DEPRECATED_WARNING
+#endif
+
#include "main.h"
+template<typename MatrixType> void triangular_deprecated(const MatrixType &m)
+{
+ Index rows = m.rows();
+ Index cols = m.cols();
+ MatrixType m1, m2, m3, m4;
+ m1.setRandom(rows,cols);
+ m2.setRandom(rows,cols);
+ m3 = m1; m4 = m2;
+ // deprecated method:
+ m1.template triangularView<Eigen::Upper>().swap(m2);
+ // use this method instead:
+ m3.template triangularView<Eigen::Upper>().swap(m4.template triangularView<Eigen::Upper>());
+ VERIFY_IS_APPROX(m1,m3);
+ VERIFY_IS_APPROX(m2,m4);
+ // deprecated method:
+ m1.template triangularView<Eigen::Lower>().swap(m4);
+ // use this method instead:
+ m3.template triangularView<Eigen::Lower>().swap(m2.template triangularView<Eigen::Lower>());
+ VERIFY_IS_APPROX(m1,m3);
+ VERIFY_IS_APPROX(m2,m4);
+}
+
template<typename MatrixType> void triangular_square(const MatrixType& m)
{
@@ -109,11 +135,12 @@ template<typename MatrixType> void triangular_square(const MatrixType& m)
// test swap
m1.setOnes();
m2.setZero();
- m2.template triangularView<Upper>().swap(m1);
+ m2.template triangularView<Upper>().swap(m1.template triangularView<Eigen::Upper>());
m3.setZero();
m3.template triangularView<Upper>().setOnes();
VERIFY_IS_APPROX(m2,m3);
-
+ VERIFY_RAISES_STATIC_ASSERT(m1.template triangularView<Eigen::Lower>().swap(m2.template triangularView<Eigen::Upper>()));
+
m1.setRandom();
m3 = m1.template triangularView<Upper>();
Matrix<Scalar, MatrixType::ColsAtCompileTime, Dynamic> m5(cols, internal::random<int>(1,20)); m5.setRandom();
@@ -224,7 +251,7 @@ template<typename MatrixType> void triangular_rect(const MatrixType& m)
// test swap
m1.setOnes();
m2.setZero();
- m2.template triangularView<Upper>().swap(m1);
+ m2.template triangularView<Upper>().swap(m1.template triangularView<Eigen::Upper>());
m3.setZero();
m3.template triangularView<Upper>().setOnes();
VERIFY_IS_APPROX(m2,m3);
@@ -256,6 +283,9 @@ EIGEN_DECLARE_TEST(triangular)
CALL_SUBTEST_9( triangular_rect(MatrixXcf(r, c)) );
CALL_SUBTEST_5( triangular_rect(MatrixXcd(r, c)) );
CALL_SUBTEST_6( triangular_rect(Matrix<float,Dynamic,Dynamic,RowMajor>(r, c)) );
+
+ CALL_SUBTEST_100( triangular_deprecated(Matrix<float, 5, 7>()) );
+ CALL_SUBTEST_100( triangular_deprecated(MatrixXd(r,c)) );
}
CALL_SUBTEST_1( bug_159() );