mirror of
https://gitlab.com/libeigen/eigen.git
synced 2025-09-25 15:53:19 +08:00
Add test for Matrix(x, y) ctor static assert added in previous changeset
This commit is contained in:
parent
ab3f138b23
commit
aa3e420df5
@ -22,6 +22,7 @@
|
|||||||
// License and a copy of the GNU General Public License along with
|
// License and a copy of the GNU General Public License along with
|
||||||
// Eigen. If not, see <http://www.gnu.org/licenses/>.
|
// Eigen. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
#define EIGEN_NO_STATIC_ASSERT
|
||||||
#include "main.h"
|
#include "main.h"
|
||||||
|
|
||||||
template<typename Scalar> void smallVectors()
|
template<typename Scalar> void smallVectors()
|
||||||
@ -29,6 +30,7 @@ template<typename Scalar> void smallVectors()
|
|||||||
typedef Matrix<Scalar, 1, 2> V2;
|
typedef Matrix<Scalar, 1, 2> V2;
|
||||||
typedef Matrix<Scalar, 3, 1> V3;
|
typedef Matrix<Scalar, 3, 1> V3;
|
||||||
typedef Matrix<Scalar, 1, 4> V4;
|
typedef Matrix<Scalar, 1, 4> V4;
|
||||||
|
typedef Matrix<Scalar, Dynamic, 1> VX;
|
||||||
Scalar x1 = internal::random<Scalar>(),
|
Scalar x1 = internal::random<Scalar>(),
|
||||||
x2 = internal::random<Scalar>(),
|
x2 = internal::random<Scalar>(),
|
||||||
x3 = internal::random<Scalar>(),
|
x3 = internal::random<Scalar>(),
|
||||||
@ -45,6 +47,29 @@ template<typename Scalar> void smallVectors()
|
|||||||
VERIFY_IS_APPROX(x3, v3.z());
|
VERIFY_IS_APPROX(x3, v3.z());
|
||||||
VERIFY_IS_APPROX(x3, v4.z());
|
VERIFY_IS_APPROX(x3, v4.z());
|
||||||
VERIFY_IS_APPROX(x4, v4.w());
|
VERIFY_IS_APPROX(x4, v4.w());
|
||||||
|
|
||||||
|
if (!NumTraits<Scalar>::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()
|
void test_smallvectors()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user