Vector2Test.cpp 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  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, getX)
  43. {
  44. Vector2 a{3, 4};
  45. ASSERT_FLOAT_EQ(3, a.getX());
  46. }
  47. TEST_F(Vector2Test, getY)
  48. {
  49. Vector2 a{3, 4};
  50. ASSERT_FLOAT_EQ(4, a.getY());
  51. }
  52. TEST_F(Vector2Test, setX)
  53. {
  54. Vector2 a{3, 4};
  55. a.setX(14);
  56. ASSERT_FLOAT_EQ(14, a.getX());
  57. }
  58. TEST_F(Vector2Test, setY)
  59. {
  60. Vector2 a{3, 4};
  61. a.setY(8);
  62. ASSERT_FLOAT_EQ(8, a.getY());
  63. }
  64. }