summaryrefslogtreecommitdiffstats
path: root/test/gl_video.c
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--test/gl_video.c25
1 files changed, 25 insertions, 0 deletions
diff --git a/test/gl_video.c b/test/gl_video.c
new file mode 100644
index 0000000..a2bdda4
--- /dev/null
+++ b/test/gl_video.c
@@ -0,0 +1,25 @@
+#include "test_utils.h"
+#include "video/out/gpu/utils.h"
+
+int main(void)
+{
+ float x;
+
+ x = gl_video_scale_ambient_lux(16.0, 64.0, 2.40, 1.961, 16.0);
+ assert_float_equal(x, 2.40f, FLT_EPSILON);
+
+ x = gl_video_scale_ambient_lux(16.0, 64.0, 2.40, 1.961, 64.0);
+ assert_float_equal(x, 1.961f, FLT_EPSILON);
+
+ x = gl_video_scale_ambient_lux(16.0, 64.0, 1.961, 2.40, 64.0);
+ assert_float_equal(x, 2.40f, FLT_EPSILON);
+
+ x = gl_video_scale_ambient_lux(16.0, 64.0, 2.40, 1.961, 0.0);
+ assert_float_equal(x, 2.40f, FLT_EPSILON);
+
+ // 32 corresponds to the midpoint after converting lux to the log10 scale
+ x = gl_video_scale_ambient_lux(16.0, 64.0, 2.40, 1.961, 32.0);
+ float mid_gamma = (2.40 - 1.961) / 2 + 1.961;
+ assert_float_equal(x, mid_gamma, FLT_EPSILON);
+ return 0;
+}