steps and stepr test

This commit is contained in:
Marcin
2025-01-18 19:09:53 +00:00
parent 9a1206f3f1
commit 4ca0c536af
4 changed files with 128 additions and 16 deletions

View File

@@ -753,6 +753,43 @@ TEST_IMPL(GLM_PREFIX, vec2_lerp) {
TEST_SUCCESS
}
TEST_IMPL(GLM_PREFIX, vec2_steps) {
vec2 v1 = {-100.0f, -200.0f};
vec2 v2;
GLM(vec2_steps)(-2.5f, v1, v2);
ASSERT(test_eq(v2[0], 0.0f))
ASSERT(test_eq(v2[1], 0.0f))
GLM(vec2_steps)(-150.0f, v1, v2);
ASSERT(test_eq(v2[0], 1.0f))
ASSERT(test_eq(v2[1], 0.0f))
GLM(vec2_steps)(-300.0f, v1, v2);
ASSERT(test_eq(v2[0], 1.0f))
ASSERT(test_eq(v2[1], 1.0f))
TEST_SUCCESS
}
TEST_IMPL(GLM_PREFIX, vec2_stepr) {
vec2 v1 = {-2.5f, -150.0f};
vec2 v2;
GLM(vec2_stepr)(v1, -200.0f, v2);
ASSERT(test_eq(v2[0], 0.0f))
ASSERT(test_eq(v2[1], 0.0f))
GLM(vec2_stepr)(v1, -150.0f, v2);
ASSERT(test_eq(v2[0], 0.0f))
ASSERT(test_eq(v2[1], 1.0f))
GLM(vec2_stepr)(v1, 0.0f, v2);
ASSERT(test_eq(v2[0], 1.0f))
ASSERT(test_eq(v2[1], 1.0f))
TEST_SUCCESS
}
TEST_IMPL(GLM_PREFIX, vec2_complex_mul) {
vec2 v1 = { 3.0f, 5.0f },
v2 = { 7.0f, 11.0f },

View File

@@ -1393,21 +1393,43 @@ TEST_IMPL(GLM_PREFIX, vec3_mixc) {
TEST_SUCCESS
}
TEST_IMPL(GLM_PREFIX, vec3_step_uni) {
TEST_IMPL(GLM_PREFIX, vec3_steps) {
vec3 v1 = {-100.0f, -200.0f, -10.0f};
vec3 v2;
GLM(vec3_step_uni)(-2.5f, v1, v2);
GLM(vec3_steps)(-2.5f, v1, v2);
ASSERT(test_eq(v2[0], 0.0f))
ASSERT(test_eq(v2[1], 0.0f))
ASSERT(test_eq(v2[2], 0.0f))
GLM(vec3_step_uni)(-10.0f, v1, v2);
GLM(vec3_steps)(-10.0f, v1, v2);
ASSERT(test_eq(v2[0], 0.0f))
ASSERT(test_eq(v2[1], 0.0f))
ASSERT(test_eq(v2[2], 1.0f))
GLM(vec3_step_uni)(-1000.0f, v1, v2);
GLM(vec3_steps)(-1000.0f, v1, v2);
ASSERT(test_eq(v2[0], 1.0f))
ASSERT(test_eq(v2[1], 1.0f))
ASSERT(test_eq(v2[2], 1.0f))
TEST_SUCCESS
}
TEST_IMPL(GLM_PREFIX, vec3_stepr) {
vec3 v1 = {-2.5f, -10.0f, -1000.0f};
vec3 v2;
GLM(vec3_stepr)(v1, -100.0f, v2);
ASSERT(test_eq(v2[0], 0.0f))
ASSERT(test_eq(v2[1], 0.0f))
ASSERT(test_eq(v2[2], 1.0f))
GLM(vec3_stepr)(v1, -5.0f, v2);
ASSERT(test_eq(v2[0], 0.0f))
ASSERT(test_eq(v2[1], 1.0f))
ASSERT(test_eq(v2[2], 1.0f))
GLM(vec3_stepr)(v1, -1.0f, v2);
ASSERT(test_eq(v2[0], 1.0f))
ASSERT(test_eq(v2[1], 1.0f))
ASSERT(test_eq(v2[2], 1.0f))

View File

@@ -980,23 +980,60 @@ TEST_IMPL(GLM_PREFIX, vec4_mixc) {
TEST_SUCCESS
}
TEST_IMPL(GLM_PREFIX, vec4_step_uni) {
TEST_IMPL(GLM_PREFIX, vec4_steps) {
vec4 v1 = {-100.0f, -200.0f, -10.0f, -10.0f};
vec4 v2;
GLM(vec4_step_uni)(-2.5f, v1, v2);
GLM(vec4_steps)(-2.5f, v1, v2);
ASSERT(test_eq(v2[0], 0.0f))
ASSERT(test_eq(v2[1], 0.0f))
ASSERT(test_eq(v2[2], 0.0f))
ASSERT(test_eq(v2[3], 0.0f))
GLM(vec4_step_uni)(-10.0f, v1, v2);
GLM(vec4_steps)(-10.0f, v1, v2);
ASSERT(test_eq(v2[0], 0.0f))
ASSERT(test_eq(v2[1], 0.0f))
ASSERT(test_eq(v2[2], 1.0f))
ASSERT(test_eq(v2[3], 1.0f))
GLM(vec4_step_uni)(-1000.0f, v1, v2);
GLM(vec4_steps)(-1000.0f, v1, v2);
ASSERT(test_eq(v2[0], 1.0f))
ASSERT(test_eq(v2[1], 1.0f))
ASSERT(test_eq(v2[2], 1.0f))
ASSERT(test_eq(v2[3], 1.0f))
TEST_SUCCESS
}
TEST_IMPL(GLM_PREFIX, vec4_stepr) {
vec4 v1 = {-2.5f, -100.0f, -200.0f, -300.0f};
vec4 v2;
GLM(vec4_stepr)(v1, -1000.0f, v2);
ASSERT(test_eq(v2[0], 0.0f))
ASSERT(test_eq(v2[1], 0.0f))
ASSERT(test_eq(v2[2], 0.0f))
ASSERT(test_eq(v2[3], 0.0f))
GLM(vec4_stepr)(v1, -250.0f, v2);
ASSERT(test_eq(v2[0], 0.0f))
ASSERT(test_eq(v2[1], 0.0f))
ASSERT(test_eq(v2[2], 0.0f))
ASSERT(test_eq(v2[3], 1.0f))
GLM(vec4_stepr)(v1, -150.0f, v2);
ASSERT(test_eq(v2[0], 0.0f))
ASSERT(test_eq(v2[1], 0.0f))
ASSERT(test_eq(v2[2], 1.0f))
ASSERT(test_eq(v2[3], 1.0f))
GLM(vec4_stepr)(v1, -10.0f, v2);
ASSERT(test_eq(v2[0], 0.0f))
ASSERT(test_eq(v2[1], 1.0f))
ASSERT(test_eq(v2[2], 1.0f))
ASSERT(test_eq(v2[3], 1.0f))
GLM(vec4_stepr)(v1, 0.0f, v2);
ASSERT(test_eq(v2[0], 1.0f))
ASSERT(test_eq(v2[1], 1.0f))
ASSERT(test_eq(v2[2], 1.0f))

View File

@@ -542,6 +542,8 @@ TEST_DECLARE(glm_vec2_abs)
TEST_DECLARE(glm_vec2_fract)
TEST_DECLARE(glm_vec2_floor)
TEST_DECLARE(glm_vec2_mods)
TEST_DECLARE(glm_vec2_steps)
TEST_DECLARE(glm_vec2_stepr)
TEST_DECLARE(glm_vec2_lerp)
TEST_DECLARE(glm_vec2_complex_mul)
TEST_DECLARE(glm_vec2_complex_div)
@@ -593,6 +595,8 @@ TEST_DECLARE(glmc_vec2_abs)
TEST_DECLARE(glmc_vec2_fract)
TEST_DECLARE(glmc_vec2_floor)
TEST_DECLARE(glmc_vec2_mods)
TEST_DECLARE(glmc_vec2_steps)
TEST_DECLARE(glmc_vec2_stepr)
TEST_DECLARE(glmc_vec2_lerp)
TEST_DECLARE(glmc_vec2_complex_mul)
TEST_DECLARE(glmc_vec2_complex_div)
@@ -676,7 +680,6 @@ TEST_DECLARE(glm_vec3_ortho)
TEST_DECLARE(glm_vec3_clamp)
TEST_DECLARE(glm_vec3_mix)
TEST_DECLARE(glm_vec3_mixc)
TEST_DECLARE(glm_vec3_step_uni)
TEST_DECLARE(glm_vec3_step)
TEST_DECLARE(glm_vec3_smoothstep_uni)
TEST_DECLARE(glm_vec3_smoothstep)
@@ -700,6 +703,8 @@ TEST_DECLARE(glm_vec3_abs)
TEST_DECLARE(glm_vec3_fract)
TEST_DECLARE(glm_vec3_floor)
TEST_DECLARE(glm_vec3_mods)
TEST_DECLARE(glm_vec3_steps)
TEST_DECLARE(glm_vec3_stepr)
TEST_DECLARE(glm_vec3_hadd)
TEST_DECLARE(glm_vec3_sqrt)
TEST_DECLARE(glm_vec3_make)
@@ -757,7 +762,6 @@ TEST_DECLARE(glmc_vec3_ortho)
TEST_DECLARE(glmc_vec3_clamp)
TEST_DECLARE(glmc_vec3_mix)
TEST_DECLARE(glmc_vec3_mixc)
TEST_DECLARE(glmc_vec3_step_uni)
TEST_DECLARE(glmc_vec3_step)
TEST_DECLARE(glmc_vec3_smoothstep_uni)
TEST_DECLARE(glmc_vec3_smoothstep)
@@ -781,6 +785,8 @@ TEST_DECLARE(glmc_vec3_abs)
TEST_DECLARE(glmc_vec3_fract)
TEST_DECLARE(glmc_vec3_floor)
TEST_DECLARE(glmc_vec3_mods)
TEST_DECLARE(glmc_vec3_steps)
TEST_DECLARE(glmc_vec3_stepr)
TEST_DECLARE(glmc_vec3_hadd)
TEST_DECLARE(glmc_vec3_sqrt)
TEST_DECLARE(glmc_vec3_make)
@@ -849,7 +855,6 @@ TEST_DECLARE(glm_vec4_lerp)
TEST_DECLARE(glm_vec4_lerpc)
TEST_DECLARE(glm_vec4_mix)
TEST_DECLARE(glm_vec4_mixc)
TEST_DECLARE(glm_vec4_step_uni)
TEST_DECLARE(glm_vec4_step)
TEST_DECLARE(glm_vec4_smoothstep_uni)
TEST_DECLARE(glm_vec4_smoothstep)
@@ -874,6 +879,8 @@ TEST_DECLARE(glm_vec4_abs)
TEST_DECLARE(glm_vec4_fract)
TEST_DECLARE(glm_vec4_floor)
TEST_DECLARE(glm_vec4_mods)
TEST_DECLARE(glm_vec4_steps)
TEST_DECLARE(glm_vec4_stepr)
TEST_DECLARE(glm_vec4_hadd)
TEST_DECLARE(glm_vec4_sqrt)
TEST_DECLARE(glm_vec4_make)
@@ -925,7 +932,6 @@ TEST_DECLARE(glmc_vec4_lerp)
TEST_DECLARE(glmc_vec4_lerpc)
TEST_DECLARE(glmc_vec4_mix)
TEST_DECLARE(glmc_vec4_mixc)
TEST_DECLARE(glmc_vec4_step_uni)
TEST_DECLARE(glmc_vec4_step)
TEST_DECLARE(glmc_vec4_smoothstep_uni)
TEST_DECLARE(glmc_vec4_smoothstep)
@@ -950,6 +956,8 @@ TEST_DECLARE(glmc_vec4_abs)
TEST_DECLARE(glmc_vec4_fract)
TEST_DECLARE(glmc_vec4_floor)
TEST_DECLARE(glmc_vec4_mods)
TEST_DECLARE(glmc_vec4_steps)
TEST_DECLARE(glmc_vec4_stepr)
TEST_DECLARE(glmc_vec4_hadd)
TEST_DECLARE(glmc_vec4_sqrt)
TEST_DECLARE(glmc_vec4_make)
@@ -1742,6 +1750,8 @@ TEST_LIST {
TEST_ENTRY(glm_vec2_fract)
TEST_ENTRY(glm_vec2_floor)
TEST_ENTRY(glm_vec2_mods)
TEST_ENTRY(glm_vec2_steps)
TEST_ENTRY(glm_vec2_stepr)
TEST_ENTRY(glm_vec2_lerp)
TEST_ENTRY(glm_vec2_complex_mul)
TEST_ENTRY(glm_vec2_complex_div)
@@ -1793,6 +1803,8 @@ TEST_LIST {
TEST_ENTRY(glmc_vec2_fract)
TEST_ENTRY(glmc_vec2_floor)
TEST_ENTRY(glmc_vec2_mods)
TEST_ENTRY(glmc_vec2_steps)
TEST_ENTRY(glmc_vec2_stepr)
TEST_ENTRY(glmc_vec2_lerp)
TEST_ENTRY(glmc_vec2_complex_mul)
TEST_ENTRY(glmc_vec2_complex_div)
@@ -1875,7 +1887,6 @@ TEST_LIST {
TEST_ENTRY(glm_vec3_clamp)
TEST_ENTRY(glm_vec3_mix)
TEST_ENTRY(glm_vec3_mixc)
TEST_ENTRY(glm_vec3_step_uni)
TEST_ENTRY(glm_vec3_step)
TEST_ENTRY(glm_vec3_smoothstep_uni)
TEST_ENTRY(glm_vec3_smoothstep)
@@ -1899,6 +1910,8 @@ TEST_LIST {
TEST_ENTRY(glm_vec3_fract)
TEST_ENTRY(glm_vec3_floor)
TEST_ENTRY(glm_vec3_mods)
TEST_ENTRY(glm_vec3_steps)
TEST_ENTRY(glm_vec3_stepr)
TEST_ENTRY(glm_vec3_hadd)
TEST_ENTRY(glm_vec3_sqrt)
TEST_ENTRY(glm_vec3_make)
@@ -1956,7 +1969,6 @@ TEST_LIST {
TEST_ENTRY(glmc_vec3_clamp)
TEST_ENTRY(glmc_vec3_mix)
TEST_ENTRY(glmc_vec3_mixc)
TEST_ENTRY(glmc_vec3_step_uni)
TEST_ENTRY(glmc_vec3_step)
TEST_ENTRY(glmc_vec3_smoothstep_uni)
TEST_ENTRY(glmc_vec3_smoothstep)
@@ -1980,6 +1992,8 @@ TEST_LIST {
TEST_ENTRY(glmc_vec3_fract)
TEST_ENTRY(glmc_vec3_floor)
TEST_ENTRY(glmc_vec3_mods)
TEST_ENTRY(glmc_vec3_steps)
TEST_ENTRY(glmc_vec3_stepr)
TEST_ENTRY(glmc_vec3_hadd)
TEST_ENTRY(glmc_vec3_sqrt)
TEST_ENTRY(glmc_vec3_make)
@@ -2048,7 +2062,6 @@ TEST_LIST {
TEST_ENTRY(glm_vec4_lerpc)
TEST_ENTRY(glm_vec4_mix)
TEST_ENTRY(glm_vec4_mixc)
TEST_ENTRY(glm_vec4_step_uni)
TEST_ENTRY(glm_vec4_step)
TEST_ENTRY(glm_vec4_smoothstep_uni)
TEST_ENTRY(glm_vec4_smoothstep)
@@ -2073,6 +2086,8 @@ TEST_LIST {
TEST_ENTRY(glm_vec4_fract)
TEST_ENTRY(glm_vec4_floor)
TEST_ENTRY(glm_vec4_mods)
TEST_ENTRY(glm_vec4_steps)
TEST_ENTRY(glm_vec4_stepr)
TEST_ENTRY(glm_vec4_hadd)
TEST_ENTRY(glm_vec4_sqrt)
TEST_ENTRY(glm_vec4_make)
@@ -2124,7 +2139,6 @@ TEST_LIST {
TEST_ENTRY(glmc_vec4_lerpc)
TEST_ENTRY(glmc_vec4_mix)
TEST_ENTRY(glmc_vec4_mixc)
TEST_ENTRY(glmc_vec4_step_uni)
TEST_ENTRY(glmc_vec4_step)
TEST_ENTRY(glmc_vec4_smoothstep_uni)
TEST_ENTRY(glmc_vec4_smoothstep)
@@ -2149,6 +2163,8 @@ TEST_LIST {
TEST_ENTRY(glmc_vec4_fract)
TEST_ENTRY(glmc_vec4_floor)
TEST_ENTRY(glmc_vec4_mods)
TEST_ENTRY(glmc_vec4_steps)
TEST_ENTRY(glmc_vec4_stepr)
TEST_ENTRY(glmc_vec4_hadd)
TEST_ENTRY(glmc_vec4_sqrt)
TEST_ENTRY(glmc_vec4_make)