Files
j3ml/tests/LinearAlgebra/Vector4Tests.hpp

117 lines
1.9 KiB
C++

#include <J3ML/LinearAlgebra/Vector4.hpp>
using Vector4 = J3ML::LinearAlgebra::Vector4;
void EXPECT_V4_EQ(const Vector4& lhs, const Vector4& rhs)
{
jtest::check(lhs.x == rhs.x);
jtest::check(lhs.y == rhs.y);
jtest::check(lhs.z == rhs.z);
jtest::check(lhs.w == rhs.w);
}
int Vector4Tests()
{
TEST("Vector4::Ctor_Default", []
{
EXPECT_V4_EQ(Vector4(), Vector4::Zero);
});
TEST("Vector4::Constructor_XYZW", []
{
Vector4 Input (0, 1, 0, 1);
// TODO: implement jtest::check_float_eq
jtest::check(Input.x == 0);
jtest::check(Input.y == 1);
jtest::check(Input.z == 0);
jtest::check(Input.w == 1);
});
TEST("Vector4::Addition_Op", [] {
Vector4 A (1, 1, 1, 1);
Vector4 B (2, 2, 2, 2);
Vector4 ExpectedResult (3, 3, 3, 3);
EXPECT_V4_EQ(A + B, ExpectedResult);
});
/*TEST(Vector4Test, V4_Addition_Method)
{
}
TEST(Vector4Test, V4_Addition_Static)
{
}
TEST(Vector4Test, V4_Subtract_Op)
{
}
TEST(Vector4Test, V4_Subtract_Method)
{
}
TEST(Vector4Test, V4_Subtract_Static)
{
}
TEST(Vector4Test, V4_Scalar_Mult_Op)
{
}
TEST(Vector4Test, V4_Scalar_Mult_Method)
{
}
TEST(Vector4Test, V4_Scalar_Mult_Static)
{
}
TEST(Vector4Test, V4_Scalar_Div_Op)
{
}
TEST(Vector4Test, V4_Scalar_Div_Method)
{
}
TEST(Vector4Test, V4_Scalar_Div_Static)
{
}
TEST(Vector4Test, V4_Sizeof)
{
}
TEST(Vector4Test, V4_NaN)
{
}
TEST(Vector4Tests, V4_Min) {}
TEST(Vector4Tests, V4_Max) {}
TEST(Vector4Tests, V4_Clamp) {}
TEST(Vector4Tests, V4_DotProduct) {}
TEST(Vector4Tests, V4_CrossProduct) {}
TEST(Vector4Tests, V4_Project) {}
TEST(Vector4Test, V4_Normalize) {}*/
return 0;
}