Vector2Test.cpp 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. /*
  2. * Author: Patrick-Christopher Mattulat
  3. * Company: Lynar Studios
  4. * E-Mail: webmaster@lynarstudios.com
  5. * Created: 2022-08-05
  6. * Changed: 2022-08-05
  7. *
  8. * */
  9. #include <gtest/gtest.h>
  10. #include <ls-math/ls_math_vector.hpp>
  11. using namespace ls::math::vector;
  12. using namespace ls::math::core::type;
  13. namespace
  14. {
  15. class Vector2Test : public ::testing::Test
  16. {
  17. protected:
  18. Vector2Test() = default;
  19. ~Vector2Test() override = default;
  20. void SetUp() override
  21. {}
  22. void TearDown() override
  23. {}
  24. };
  25. TEST_F(Vector2Test, operator_addition)
  26. {
  27. Vector2 c = Vector2(3, 4) + Vector2(5, 3);
  28. ASSERT_FLOAT_EQ(8, c.getX());
  29. ASSERT_FLOAT_EQ(7, c.getY());
  30. }
  31. TEST_F(Vector2Test, operator_substraction)
  32. {
  33. Vector2 c = Vector2(3, 4) - Vector2(5, 3);
  34. ASSERT_FLOAT_EQ(-2, c.getX());
  35. ASSERT_FLOAT_EQ(1, c.getY());
  36. }
  37. TEST_F(Vector2Test, operator_scalar)
  38. {
  39. vector_scalar scalar = Vector2(3, 4) * Vector2(5, 3);
  40. ASSERT_FLOAT_EQ(27, scalar);
  41. }
  42. TEST_F(Vector2Test, operator_multiplicator)
  43. {
  44. Vector2 c = Vector2(3, 4) * 1.5f;
  45. ASSERT_FLOAT_EQ(4.5f, c.getX());
  46. ASSERT_FLOAT_EQ(6.0f, c.getY());
  47. }
  48. TEST_F(Vector2Test, operator_equals)
  49. {
  50. ASSERT_TRUE(Vector2(3, 4) == Vector2(3, 4));
  51. }
  52. TEST_F(Vector2Test, operator_equals_not_equals)
  53. {
  54. ASSERT_FALSE(Vector2(3, 8) == Vector2(3, 4));
  55. }
  56. TEST_F(Vector2Test, operator_not_equals)
  57. {
  58. ASSERT_TRUE(Vector2(3, 5) != Vector2(3, 4));
  59. }
  60. TEST_F(Vector2Test, operator_not_equals_equals)
  61. {
  62. ASSERT_FALSE(Vector2(3, 4) != Vector2(3, 4));
  63. }
  64. TEST_F(Vector2Test, getX)
  65. {
  66. Vector2 a{3, 4};
  67. ASSERT_FLOAT_EQ(3, a.getX());
  68. }
  69. TEST_F(Vector2Test, getY)
  70. {
  71. Vector2 a{3, 4};
  72. ASSERT_FLOAT_EQ(4, a.getY());
  73. }
  74. TEST_F(Vector2Test, setX)
  75. {
  76. Vector2 a{3, 4};
  77. a.setX(14);
  78. ASSERT_FLOAT_EQ(14, a.getX());
  79. }
  80. TEST_F(Vector2Test, setY)
  81. {
  82. Vector2 a{3, 4};
  83. a.setY(8);
  84. ASSERT_FLOAT_EQ(8, a.getY());
  85. }
  86. }