|
|
@@ -7,71 +7,70 @@
|
|
|
// File : test/core/type_vec2.cpp
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
-#define GLM_SWIZZLE
|
|
|
#include <glm/glm.hpp>
|
|
|
|
|
|
int test_vec2_operators()
|
|
|
{
|
|
|
- int Error = 0;
|
|
|
-
|
|
|
- {
|
|
|
- glm::vec2 A(1.0f);
|
|
|
- glm::vec2 B(1.0f);
|
|
|
- Error += A != B ? 1 : 0;
|
|
|
- Error += A == B ? 0 : 1;
|
|
|
- }
|
|
|
-
|
|
|
- {
|
|
|
- glm::vec2 A(1.0f);
|
|
|
- glm::vec2 C = A + 1.0f;
|
|
|
- A += 1.0f;
|
|
|
- Error += A.x == 2.0f && A.y == 2.0f ? 0 : 1;
|
|
|
- Error += A.x == C.x && A.y == C.y ? 0 : 1;
|
|
|
- }
|
|
|
-
|
|
|
- {
|
|
|
- glm::vec2 A(1.0f);
|
|
|
- glm::vec2 B(2.0f,-1.0f);
|
|
|
- glm::vec2 C = A + B;
|
|
|
- A += B;
|
|
|
- Error += A.x == 3.0f && A.y == 0.0f ? 0 : 1;
|
|
|
- Error += A.x == C.x && A.y == C.y ? 0 : 1;
|
|
|
- }
|
|
|
-
|
|
|
- {
|
|
|
- glm::vec2 A(1.0f);
|
|
|
- glm::vec2 C = A - 1.0f;
|
|
|
- A -= 1.0f;
|
|
|
- Error += A.x == 0.0f && A.y == 0.0f ? 0 : 1;
|
|
|
- Error += A.x == C.x && A.y == C.y ? 0 : 1;
|
|
|
- }
|
|
|
-
|
|
|
- {
|
|
|
- glm::vec2 A(1.0f);
|
|
|
- glm::vec2 B(2.0f,-1.0f);
|
|
|
- glm::vec2 C = A - B;
|
|
|
- A -= B;
|
|
|
- Error += A.x == -1.0f && A.y == 2.0f ? 0 : 1;
|
|
|
- Error += A.x == C.x && A.y == C.y ? 0 : 1;
|
|
|
- }
|
|
|
-
|
|
|
- {
|
|
|
- glm::vec2 A(1.0f);
|
|
|
- glm::vec2 C = A * 2.0f;
|
|
|
- A *= 2.0f;
|
|
|
- Error += A.x == 2.0f && A.y == 2.0f ? 0 : 1;
|
|
|
- Error += A.x == C.x && A.y == C.y ? 0 : 1;
|
|
|
- }
|
|
|
-
|
|
|
- {
|
|
|
- glm::vec2 A(2.0f);
|
|
|
- glm::vec2 B(2.0f);
|
|
|
- glm::vec2 C = A / B;
|
|
|
- A /= B;
|
|
|
- Error += A.x == 1.0f && A.y == 1.0f ? 0 : 1;
|
|
|
- Error += A.x == C.x && A.y == C.y ? 0 : 1;
|
|
|
- }
|
|
|
-
|
|
|
+ int Error = 0;
|
|
|
+
|
|
|
+ {
|
|
|
+ glm::vec2 A(1.0f);
|
|
|
+ glm::vec2 B(1.0f);
|
|
|
+ Error += A != B ? 1 : 0;
|
|
|
+ Error += A == B ? 0 : 1;
|
|
|
+ }
|
|
|
+
|
|
|
+ {
|
|
|
+ glm::vec2 A(1.0f);
|
|
|
+ glm::vec2 C = A + 1.0f;
|
|
|
+ A += 1.0f;
|
|
|
+ Error += A.x == 2.0f && A.y == 2.0f ? 0 : 1;
|
|
|
+ Error += A.x == C.x && A.y == C.y ? 0 : 1;
|
|
|
+ }
|
|
|
+
|
|
|
+ {
|
|
|
+ glm::vec2 A(1.0f);
|
|
|
+ glm::vec2 B(2.0f,-1.0f);
|
|
|
+ glm::vec2 C = A + B;
|
|
|
+ A += B;
|
|
|
+ Error += A.x == 3.0f && A.y == 0.0f ? 0 : 1;
|
|
|
+ Error += A.x == C.x && A.y == C.y ? 0 : 1;
|
|
|
+ }
|
|
|
+
|
|
|
+ {
|
|
|
+ glm::vec2 A(1.0f);
|
|
|
+ glm::vec2 C = A - 1.0f;
|
|
|
+ A -= 1.0f;
|
|
|
+ Error += A.x == 0.0f && A.y == 0.0f ? 0 : 1;
|
|
|
+ Error += A.x == C.x && A.y == C.y ? 0 : 1;
|
|
|
+ }
|
|
|
+
|
|
|
+ {
|
|
|
+ glm::vec2 A(1.0f);
|
|
|
+ glm::vec2 B(2.0f,-1.0f);
|
|
|
+ glm::vec2 C = A - B;
|
|
|
+ A -= B;
|
|
|
+ Error += A.x == -1.0f && A.y == 2.0f ? 0 : 1;
|
|
|
+ Error += A.x == C.x && A.y == C.y ? 0 : 1;
|
|
|
+ }
|
|
|
+
|
|
|
+ {
|
|
|
+ glm::vec2 A(1.0f);
|
|
|
+ glm::vec2 C = A * 2.0f;
|
|
|
+ A *= 2.0f;
|
|
|
+ Error += A.x == 2.0f && A.y == 2.0f ? 0 : 1;
|
|
|
+ Error += A.x == C.x && A.y == C.y ? 0 : 1;
|
|
|
+ }
|
|
|
+
|
|
|
+ {
|
|
|
+ glm::vec2 A(2.0f);
|
|
|
+ glm::vec2 B(2.0f);
|
|
|
+ glm::vec2 C = A / B;
|
|
|
+ A /= B;
|
|
|
+ Error += A.x == 1.0f && A.y == 1.0f ? 0 : 1;
|
|
|
+ Error += A.x == C.x && A.y == C.y ? 0 : 1;
|
|
|
+ }
|
|
|
+
|
|
|
{
|
|
|
glm::vec2 A(1.0f, 2.0f);
|
|
|
glm::vec2 B(4.0f, 5.0f);
|
|
|
@@ -191,20 +190,20 @@ int test_vec2_operators()
|
|
|
|
|
|
int test_vec2_ctor()
|
|
|
{
|
|
|
- int Error = 0;
|
|
|
-
|
|
|
- {
|
|
|
- glm::vec2 A = glm::vec2(2.0f);
|
|
|
- glm::vec2 B = glm::vec2(2.0f, 3.0f);
|
|
|
- glm::vec2 C = glm::vec2(2.0f, 3.0);
|
|
|
- //glm::vec2 D = glm::dvec2(2.0); // Build error TODO: What does the specification says?
|
|
|
- glm::vec2 E(glm::dvec2(2.0));
|
|
|
- glm::vec2 F(glm::ivec2(2));
|
|
|
-
|
|
|
- }
|
|
|
-
|
|
|
+ int Error = 0;
|
|
|
+
|
|
|
+ {
|
|
|
+ glm::vec2 A = glm::vec2(2.0f);
|
|
|
+ glm::vec2 B = glm::vec2(2.0f, 3.0f);
|
|
|
+ glm::vec2 C = glm::vec2(2.0f, 3.0);
|
|
|
+ //glm::vec2 D = glm::dvec2(2.0); // Build error TODO: What does the specification says?
|
|
|
+ glm::vec2 E(glm::dvec2(2.0));
|
|
|
+ glm::vec2 F(glm::ivec2(2));
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
return Error;
|
|
|
-}
|
|
|
+}
|
|
|
|
|
|
int test_vec2_size()
|
|
|
{
|
|
|
@@ -230,7 +229,7 @@ int test_operator_increment()
|
|
|
glm::ivec2 v3 = ++v1;
|
|
|
glm::ivec2 v4 = v2++;
|
|
|
|
|
|
- Error += glm::all(glm::equal(v0, v4)) ? 0 : 1;
|
|
|
+ Error += glm::all(glm::equal(v0, v4)) ? 0 : 1;
|
|
|
Error += glm::all(glm::equal(v1, v2)) ? 0 : 1;
|
|
|
Error += glm::all(glm::equal(v1, v3)) ? 0 : 1;
|
|
|
|