#include #include using Vector4 = J3ML::LinearAlgebra::Vector4; void EXPECT_V4_EQ(const Vector4& lhs, const Vector4& rhs) { } TEST(Vector4Test, V4_Constructor_Default) { EXPECT_V4_EQ(Vector4(), Vector4::Zero); } TEST(Vector4Test, V4_Constructor_XYZW) { Vector4 Input {0, 1, 0, 1}; EXPECT_FLOAT_EQ(Input.x, 0); EXPECT_FLOAT_EQ(Input.y, 1); EXPECT_FLOAT_EQ(Input.z, 0); EXPECT_FLOAT_EQ(Input.w, 1); } TEST(Vector4Test, V4_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) {}