mirror of
https://github.com/BlackMATov/vmath.hpp.git
synced 2025-12-16 14:11:28 +07:00
sizeN -> sizeN_t, ptrdiffN -> ptrdiffN_t, fqua -> qfloat, dqua -> qdouble
This commit is contained in:
@@ -14,11 +14,11 @@ namespace
|
||||
|
||||
TEST_CASE("vmath/qua") {
|
||||
SUBCASE("size/sizeof") {
|
||||
STATIC_REQUIRE(fqua{}.size == 4);
|
||||
STATIC_REQUIRE(dqua{}.size == 4);
|
||||
STATIC_REQUIRE(qfloat{}.size == 4);
|
||||
STATIC_REQUIRE(qdouble{}.size == 4);
|
||||
|
||||
STATIC_REQUIRE(sizeof(fqua{}) == sizeof(float) * 4);
|
||||
STATIC_REQUIRE(sizeof(dqua{}) == sizeof(double) * 4);
|
||||
STATIC_REQUIRE(sizeof(qfloat{}) == sizeof(float) * 4);
|
||||
STATIC_REQUIRE(sizeof(qdouble{}) == sizeof(double) * 4);
|
||||
}
|
||||
|
||||
SUBCASE("guides") {
|
||||
@@ -31,70 +31,70 @@ TEST_CASE("vmath/qua") {
|
||||
|
||||
SUBCASE("ctors") {
|
||||
{
|
||||
STATIC_REQUIRE(fqua{}.v == uapprox3(0.f));
|
||||
STATIC_REQUIRE(fqua{}.s == uapprox(1.f));
|
||||
STATIC_REQUIRE(qfloat{}.v == uapprox3(0.f));
|
||||
STATIC_REQUIRE(qfloat{}.s == uapprox(1.f));
|
||||
|
||||
STATIC_REQUIRE(fqua{1,2,3,4}.v == uapprox3(1.f,2.f,3.f));
|
||||
STATIC_REQUIRE(fqua{1,2,3,4}.s == uapprox(4.f));
|
||||
STATIC_REQUIRE(qfloat{1,2,3,4}.v == uapprox3(1.f,2.f,3.f));
|
||||
STATIC_REQUIRE(qfloat{1,2,3,4}.s == uapprox(4.f));
|
||||
|
||||
STATIC_REQUIRE(fqua{{1,2,3},4}.v == uapprox3(1.f,2.f,3.f));
|
||||
STATIC_REQUIRE(fqua{{1,2,3},4}.s == uapprox(4.f));
|
||||
STATIC_REQUIRE(qfloat{{1,2,3},4}.v == uapprox3(1.f,2.f,3.f));
|
||||
STATIC_REQUIRE(qfloat{{1,2,3},4}.s == uapprox(4.f));
|
||||
|
||||
STATIC_REQUIRE(fqua{{1,2,3,4}}.v == uapprox3(1.f,2.f,3.f));
|
||||
STATIC_REQUIRE(fqua{{1,2,3,4}}.s == uapprox(4.f));
|
||||
STATIC_REQUIRE(qfloat{{1,2,3,4}}.v == uapprox3(1.f,2.f,3.f));
|
||||
STATIC_REQUIRE(qfloat{{1,2,3,4}}.s == uapprox(4.f));
|
||||
}
|
||||
{
|
||||
constexpr fqua q(1,2,3,4);
|
||||
constexpr fqua q2 = q;
|
||||
STATIC_REQUIRE(q2 == fqua(1,2,3,4));
|
||||
constexpr qfloat q(1,2,3,4);
|
||||
constexpr qfloat q2 = q;
|
||||
STATIC_REQUIRE(q2 == qfloat(1,2,3,4));
|
||||
}
|
||||
{
|
||||
constexpr fqua q(1,2,3,4);
|
||||
constexpr fqua q2 = std::move(q);
|
||||
STATIC_REQUIRE(q2 == fqua(1,2,3,4));
|
||||
constexpr qfloat q(1,2,3,4);
|
||||
constexpr qfloat q2 = std::move(q);
|
||||
STATIC_REQUIRE(q2 == qfloat(1,2,3,4));
|
||||
}
|
||||
{
|
||||
STATIC_REQUIRE(fqua(1,2,3,4) == fqua(1,2,3,4));
|
||||
STATIC_REQUIRE(fqua(float3(1,2,3),4) == fqua(1,2,3,4));
|
||||
STATIC_REQUIRE(fqua(float4(1,2,3,4)) == fqua(1,2,3,4));
|
||||
STATIC_REQUIRE(qfloat(1,2,3,4) == qfloat(1,2,3,4));
|
||||
STATIC_REQUIRE(qfloat(float3(1,2,3),4) == qfloat(1,2,3,4));
|
||||
STATIC_REQUIRE(qfloat(float4(1,2,3,4)) == qfloat(1,2,3,4));
|
||||
}
|
||||
}
|
||||
|
||||
SUBCASE("operator=") {
|
||||
{
|
||||
fqua v(1,2,3,4);
|
||||
fqua v2;
|
||||
qfloat v(1,2,3,4);
|
||||
qfloat v2;
|
||||
v2 = v;
|
||||
REQUIRE(v2 == fqua(1,2,3,4));
|
||||
REQUIRE(v2 == qfloat(1,2,3,4));
|
||||
}
|
||||
{
|
||||
fqua v(1,2,3,4);
|
||||
fqua v2;
|
||||
qfloat v(1,2,3,4);
|
||||
qfloat v2;
|
||||
v2 = std::move(v);
|
||||
REQUIRE(v2 == fqua(1,2,3,4));
|
||||
REQUIRE(v2 == qfloat(1,2,3,4));
|
||||
}
|
||||
}
|
||||
|
||||
SUBCASE("swap") {
|
||||
{
|
||||
fqua v1(1,2,3,4);
|
||||
fqua v2(4,5,6,7);
|
||||
qfloat v1(1,2,3,4);
|
||||
qfloat v2(4,5,6,7);
|
||||
v1.swap(v2);
|
||||
REQUIRE(v1 == fqua(4,5,6,7));
|
||||
REQUIRE(v2 == fqua(1,2,3,4));
|
||||
REQUIRE(v1 == qfloat(4,5,6,7));
|
||||
REQUIRE(v2 == qfloat(1,2,3,4));
|
||||
}
|
||||
{
|
||||
fqua v1(1,2,3,4);
|
||||
fqua v2(4,5,6,7);
|
||||
qfloat v1(1,2,3,4);
|
||||
qfloat v2(4,5,6,7);
|
||||
swap(v1, v2);
|
||||
REQUIRE(v1 == fqua(4,5,6,7));
|
||||
REQUIRE(v2 == fqua(1,2,3,4));
|
||||
REQUIRE(v1 == qfloat(4,5,6,7));
|
||||
REQUIRE(v2 == qfloat(1,2,3,4));
|
||||
}
|
||||
}
|
||||
|
||||
SUBCASE("iter") {
|
||||
{
|
||||
fqua v{1,2,3,4};
|
||||
qfloat v{1,2,3,4};
|
||||
|
||||
REQUIRE(*v.begin() == 1);
|
||||
REQUIRE(*(v.begin() + 1) == 2);
|
||||
@@ -125,12 +125,12 @@ TEST_CASE("vmath/qua") {
|
||||
REQUIRE(v.crend() - 4 == v.crbegin());
|
||||
|
||||
*v.begin() = 3;
|
||||
REQUIRE(v == fqua{3,2,3,4});
|
||||
REQUIRE(v == qfloat{3,2,3,4});
|
||||
*v.rbegin() = 5;
|
||||
REQUIRE(v == fqua{3,2,3,5});
|
||||
REQUIRE(v == qfloat{3,2,3,5});
|
||||
}
|
||||
{
|
||||
const fqua v{1,2,3,4};
|
||||
const qfloat v{1,2,3,4};
|
||||
|
||||
REQUIRE(*v.begin() == 1);
|
||||
REQUIRE(*(v.begin() + 1) == 2);
|
||||
@@ -164,11 +164,11 @@ TEST_CASE("vmath/qua") {
|
||||
|
||||
SUBCASE("data") {
|
||||
{
|
||||
fqua i2;
|
||||
qfloat i2;
|
||||
REQUIRE(i2.data() == &i2[0]);
|
||||
}
|
||||
{
|
||||
const fqua i2;
|
||||
const qfloat i2;
|
||||
REQUIRE(i2.data() == &i2[0]);
|
||||
}
|
||||
}
|
||||
@@ -193,37 +193,37 @@ TEST_CASE("vmath/qua") {
|
||||
}
|
||||
|
||||
SUBCASE("at") {
|
||||
STATIC_REQUIRE(fqua(1,2,3,4).at(0) == 1);
|
||||
STATIC_REQUIRE(fqua(1,2,3,4).at(1) == 2);
|
||||
STATIC_REQUIRE(fqua(1,2,3,4).at(2) == 3);
|
||||
STATIC_REQUIRE(fqua(1,2,3,4).at(3) == 4);
|
||||
REQUIRE_THROWS_AS((void)fqua(1,2,3,4).at(4), std::out_of_range);
|
||||
STATIC_REQUIRE(qfloat(1,2,3,4).at(0) == 1);
|
||||
STATIC_REQUIRE(qfloat(1,2,3,4).at(1) == 2);
|
||||
STATIC_REQUIRE(qfloat(1,2,3,4).at(2) == 3);
|
||||
STATIC_REQUIRE(qfloat(1,2,3,4).at(3) == 4);
|
||||
REQUIRE_THROWS_AS((void)qfloat(1,2,3,4).at(4), std::out_of_range);
|
||||
}
|
||||
|
||||
SUBCASE("operator==/operator!=") {
|
||||
STATIC_REQUIRE(fqua(1,2,3,4) == fqua(1,2,3,4));
|
||||
STATIC_REQUIRE_FALSE(fqua(1,2,3,4) == fqua(2,2,3,4));
|
||||
STATIC_REQUIRE_FALSE(fqua(1,2,3,4) == fqua(1,3,3,4));
|
||||
STATIC_REQUIRE(qfloat(1,2,3,4) == qfloat(1,2,3,4));
|
||||
STATIC_REQUIRE_FALSE(qfloat(1,2,3,4) == qfloat(2,2,3,4));
|
||||
STATIC_REQUIRE_FALSE(qfloat(1,2,3,4) == qfloat(1,3,3,4));
|
||||
|
||||
STATIC_REQUIRE_FALSE(fqua(1,2,3,4) != fqua(1,2,3,4));
|
||||
STATIC_REQUIRE(fqua(1,2,3,4) != fqua(2,2,3,4));
|
||||
STATIC_REQUIRE(fqua(1,2,3,4) != fqua(1,3,3,4));
|
||||
STATIC_REQUIRE_FALSE(qfloat(1,2,3,4) != qfloat(1,2,3,4));
|
||||
STATIC_REQUIRE(qfloat(1,2,3,4) != qfloat(2,2,3,4));
|
||||
STATIC_REQUIRE(qfloat(1,2,3,4) != qfloat(1,3,3,4));
|
||||
}
|
||||
|
||||
SUBCASE("operator<") {
|
||||
STATIC_REQUIRE_FALSE(fqua(1,2,3,4) < fqua(1,2,3,4));
|
||||
STATIC_REQUIRE_FALSE(qfloat(1,2,3,4) < qfloat(1,2,3,4));
|
||||
|
||||
STATIC_REQUIRE(fqua(0,2,3,4) < fqua(1,2,3,4));
|
||||
STATIC_REQUIRE(fqua(1,1,3,4) < fqua(1,2,3,4));
|
||||
STATIC_REQUIRE(fqua(1,2,2,4) < fqua(1,2,3,4));
|
||||
STATIC_REQUIRE(fqua(1,2,3,3) < fqua(1,2,3,4));
|
||||
STATIC_REQUIRE(qfloat(0,2,3,4) < qfloat(1,2,3,4));
|
||||
STATIC_REQUIRE(qfloat(1,1,3,4) < qfloat(1,2,3,4));
|
||||
STATIC_REQUIRE(qfloat(1,2,2,4) < qfloat(1,2,3,4));
|
||||
STATIC_REQUIRE(qfloat(1,2,3,3) < qfloat(1,2,3,4));
|
||||
|
||||
STATIC_REQUIRE_FALSE(fqua(1,2,3,4) < fqua(0,2,3,4));
|
||||
STATIC_REQUIRE_FALSE(fqua(1,2,3,4) < fqua(1,1,3,4));
|
||||
STATIC_REQUIRE_FALSE(fqua(1,2,3,4) < fqua(1,2,2,4));
|
||||
STATIC_REQUIRE_FALSE(fqua(1,2,3,4) < fqua(1,2,3,3));
|
||||
STATIC_REQUIRE_FALSE(qfloat(1,2,3,4) < qfloat(0,2,3,4));
|
||||
STATIC_REQUIRE_FALSE(qfloat(1,2,3,4) < qfloat(1,1,3,4));
|
||||
STATIC_REQUIRE_FALSE(qfloat(1,2,3,4) < qfloat(1,2,2,4));
|
||||
STATIC_REQUIRE_FALSE(qfloat(1,2,3,4) < qfloat(1,2,3,3));
|
||||
|
||||
STATIC_REQUIRE(fqua(0,3,3,4) < fqua(1,2,3,4));
|
||||
STATIC_REQUIRE_FALSE(fqua(1,2,3,4) < fqua(0,3,3,4));
|
||||
STATIC_REQUIRE(qfloat(0,3,3,4) < qfloat(1,2,3,4));
|
||||
STATIC_REQUIRE_FALSE(qfloat(1,2,3,4) < qfloat(0,3,3,4));
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user