From 8af1ba534669a223ca69136046690eb6d49ff619 Mon Sep 17 00:00:00 2001 From: Gael Guennebaud Date: Mon, 2 Dec 2013 15:07:45 +0100 Subject: Make swap unit test work with evaluators --- test/evaluators.cpp | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) (limited to 'test/evaluators.cpp') diff --git a/test/evaluators.cpp b/test/evaluators.cpp index 63f940318..7a20014dd 100644 --- a/test/evaluators.cpp +++ b/test/evaluators.cpp @@ -106,7 +106,7 @@ void test_evaluators() copy_using_evaluator(w.transpose(), v_const); VERIFY_IS_APPROX(w,v_const.transpose().eval()); -#if 0 + // Testing Array evaluator { ArrayXXf a(2,3); @@ -194,7 +194,7 @@ void test_evaluators() VERIFY_IS_APPROX_EVALUATOR2(resXX, prod(mX4,m4X), mX4*m4X); VERIFY_IS_APPROX_EVALUATOR2(resXX, prod(mXX,mXX), mXX*mXX); } -#endif + { ArrayXXf a(2,3); ArrayXXf b(3,2); @@ -409,7 +409,7 @@ void test_evaluators() { // test triangular shapes - MatrixXd A = MatrixXd::Random(6,6), B(6,6), C(6,6); + MatrixXd A = MatrixXd::Random(6,6), B(6,6), C(6,6), D(6,6); A.setRandom();B.setRandom(); VERIFY_IS_APPROX_EVALUATOR2(B, A.triangularView(), MatrixXd(A.triangularView())); @@ -434,5 +434,11 @@ void test_evaluators() C = B; C.triangularView() = A.triangularView().transpose(); copy_using_evaluator(B.triangularView(), A.triangularView().transpose()); VERIFY(B.isApprox(C) && "copy_using_evaluator(B.triangularView(), A.triangularView().transpose())"); + + + A.setRandom();B.setRandom(); C = B; D = A; + C.triangularView().swap(D.triangularView()); + swap_using_evaluator(B.triangularView(), A.triangularView()); + VERIFY(B.isApprox(C) && "swap_using_evaluator(B.triangularView(), A.triangularView())"); } } -- cgit v1.2.3