ViewTests.c 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. #include "../Tests.h"
  2. #include "core/View.h"
  3. static void testFromAngles() {
  4. View v;
  5. initView(&v);
  6. updateDirections(&v, 0.0f, 0.0f);
  7. TEST_V3(&V(0.0f, 1.0f, 0.0f), &v.up);
  8. TEST_V3(&V(0.0f, -1.0f, 0.0f), &v.down);
  9. TEST_V3(&V(0.0f, 0.0f, -1.0f), &v.left);
  10. TEST_V3(&V(0.0f, 0.0f, 1.0f), &v.right);
  11. TEST_V3(&V(1.0f, 0.0f, 0.0f), &v.front);
  12. TEST_V3(&V(-1.0f, 0.0f, 0.0f), &v.back);
  13. }
  14. static void testFromQuaternion() {
  15. View v;
  16. initView(&v);
  17. updateDirectionsQ(&v, &UNIT_QUATERNION);
  18. TEST_V3(&V(0.0f, 1.0f, 0.0f), &v.up);
  19. TEST_V3(&V(0.0f, -1.0f, 0.0f), &v.down);
  20. TEST_V3(&V(0.0f, 0.0f, -1.0f), &v.left);
  21. TEST_V3(&V(0.0f, 0.0f, 1.0f), &v.right);
  22. TEST_V3(&V(1.0f, 0.0f, 0.0f), &v.front);
  23. TEST_V3(&V(-1.0f, 0.0f, 0.0f), &v.back);
  24. }
  25. static void testUpdateMatrix() {
  26. View v;
  27. initView(&v);
  28. Matrix* m = updateMatrix(&v, &V(1.0f, 2.0f, 3.0f));
  29. char buffer[128];
  30. toStringMatrix(m, buffer, sizeof(buffer));
  31. TEST_STRING("[[0.000, 0.000, 0.000, -0.000], "
  32. "[0.000, 0.000, 0.000, -0.000], "
  33. "[0.000, 0.000, 0.000, -0.000], "
  34. "[0.000, 0.000, 0.000, 1.000]]",
  35. buffer);
  36. }
  37. void testView() {
  38. testFromAngles();
  39. testFromQuaternion();
  40. testUpdateMatrix();
  41. }