gtx_string_cast.cpp 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. ///////////////////////////////////////////////////////////////////////////////////////////////////
  2. // OpenGL Mathematics Copyright (c) 2005 - 2014 G-Truc Creation (www.g-truc.net)
  3. ///////////////////////////////////////////////////////////////////////////////////////////////////
  4. // Created : 2011-09-01
  5. // Updated : 2011-09-01
  6. // Licence : This source is under MIT licence
  7. // File : test/gtx/string_cast.cpp
  8. ///////////////////////////////////////////////////////////////////////////////////////////////////
  9. #define GLM_FORCE_RADIANS
  10. #include <glm/glm.hpp>
  11. #include <glm/gtx/string_cast.hpp>
  12. #include <iostream>
  13. #include <limits>
  14. int test_string_cast_scalar()
  15. {
  16. int Error = 0;
  17. float B1(1.0);
  18. std::string B2 = glm::to_string(B1);
  19. Error += B2 != std::string("float(1.000000)") ? 1 : 0;
  20. double C1(1.0);
  21. std::string C2 = glm::to_string(C1);
  22. Error += C2 != std::string("double(1.000000)") ? 1 : 0;
  23. return Error;
  24. }
  25. int test_string_cast_vector()
  26. {
  27. int Error = 0;
  28. glm::vec2 A1(1, 2);
  29. std::string A2 = glm::to_string(A1);
  30. Error += A2 != std::string("fvec2(1.000000, 2.000000)") ? 1 : 0;
  31. glm::vec3 B1(1, 2, 3);
  32. std::string B2 = glm::to_string(B1);
  33. Error += B2 != std::string("fvec3(1.000000, 2.000000, 3.000000)") ? 1 : 0;
  34. glm::vec4 C1(1, 2, 3, 4);
  35. std::string C2 = glm::to_string(C1);
  36. Error += C2 != std::string("fvec4(1.000000, 2.000000, 3.000000, 4.000000)") ? 1 : 0;
  37. glm::ivec2 D1(1, 2);
  38. std::string D2 = glm::to_string(D1);
  39. Error += D2 != std::string("ivec2(1, 2)") ? 1 : 0;
  40. glm::ivec3 E1(1, 2, 3);
  41. std::string E2 = glm::to_string(E1);
  42. Error += E2 != std::string("ivec3(1, 2, 3)") ? 1 : 0;
  43. glm::ivec4 F1(1, 2, 3, 4);
  44. std::string F2 = glm::to_string(F1);
  45. Error += F2 != std::string("ivec4(1, 2, 3, 4)") ? 1 : 0;
  46. glm::dvec2 J1(1, 2);
  47. std::string J2 = glm::to_string(J1);
  48. Error += J2 != std::string("dvec2(1.000000, 2.000000)") ? 1 : 0;
  49. glm::dvec3 K1(1, 2, 3);
  50. std::string K2 = glm::to_string(K1);
  51. Error += K2 != std::string("dvec3(1.000000, 2.000000, 3.000000)") ? 1 : 0;
  52. glm::dvec4 L1(1, 2, 3, 4);
  53. std::string L2 = glm::to_string(L1);
  54. Error += L2 != std::string("dvec4(1.000000, 2.000000, 3.000000, 4.000000)") ? 1 : 0;
  55. return Error;
  56. }
  57. int test_string_cast_matrix()
  58. {
  59. int Error = 0;
  60. return Error;
  61. }
  62. int main()
  63. {
  64. int Error = 0;
  65. Error += test_string_cast_scalar();
  66. Error += test_string_cast_vector();
  67. Error += test_string_cast_matrix();
  68. return Error;
  69. }