|
@@ -1,7 +1,7 @@ |
|
|
// |
|
|
// |
|
|
// Lol Engine |
|
|
// Lol Engine |
|
|
// |
|
|
// |
|
|
// Copyright: (c) 2010-2011 Sam Hocevar <sam@hocevar.net> |
|
|
|
|
|
|
|
|
// Copyright: (c) 2010-2012 Sam Hocevar <sam@hocevar.net> |
|
|
// This program is free software; you can redistribute it and/or |
|
|
// This program is free software; you can redistribute it and/or |
|
|
// modify it under the terms of the Do What The Fuck You Want To |
|
|
// modify it under the terms of the Do What The Fuck You Want To |
|
|
// Public License, Version 2, as published by Sam Hocevar. See |
|
|
// Public License, Version 2, as published by Sam Hocevar. See |
|
@@ -20,52 +20,109 @@ namespace lol |
|
|
|
|
|
|
|
|
LOLUNIT_FIXTURE(BuildTest) |
|
|
LOLUNIT_FIXTURE(BuildTest) |
|
|
{ |
|
|
{ |
|
|
LOLUNIT_TEST(TypeSize) |
|
|
|
|
|
|
|
|
LOLUNIT_TEST(TypeSizeHalf) |
|
|
{ |
|
|
{ |
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(half), 2); |
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(half), 2); |
|
|
//LOLUNIT_ASSERT_EQUAL(sizeof(f16vec2), 4); |
|
|
|
|
|
//LOLUNIT_ASSERT_EQUAL(sizeof(f16vec3), 6); |
|
|
|
|
|
//LOLUNIT_ASSERT_EQUAL(sizeof(f16vec4), 8); |
|
|
|
|
|
//LOLUNIT_ASSERT_EQUAL(sizeof(f16mat4), 32); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(f16vec2), 4); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(f16vec3), 6); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(f16vec4), 8); |
|
|
|
|
|
|
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(f16mat2), 8); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(f16mat3), 18); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(f16mat4), 32); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
LOLUNIT_TEST(TypeSizeFloat) |
|
|
|
|
|
{ |
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(float), 4); |
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(float), 4); |
|
|
|
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(vec2), 8); |
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(vec2), 8); |
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(vec3), 12); |
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(vec3), 12); |
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(vec4), 16); |
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(vec4), 16); |
|
|
|
|
|
|
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(mat2), 16); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(mat3), 36); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(mat4), 64); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
LOLUNIT_TEST(TypeSizeDouble) |
|
|
|
|
|
{ |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(double), 8); |
|
|
|
|
|
|
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(f64vec2), 16); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(f64vec3), 24); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(f64vec4), 32); |
|
|
|
|
|
|
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(f64mat2), 32); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(f64mat3), 72); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(f64mat4), 128); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
LOLUNIT_TEST(TypeSizeInt8) |
|
|
|
|
|
{ |
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(i8vec2), 2); |
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(i8vec2), 2); |
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(u8vec2), 2); |
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(u8vec2), 2); |
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(i16vec2), 4); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(u16vec2), 4); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(ivec2), 8); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(uvec2), 8); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(i64vec2), 16); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(u64vec2), 16); |
|
|
|
|
|
|
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(i8vec3), 3); |
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(i8vec3), 3); |
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(u8vec3), 3); |
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(u8vec3), 3); |
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(i16vec3), 6); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(u16vec3), 6); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(ivec3), 12); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(uvec3), 12); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(i64vec3), 24); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(u64vec3), 24); |
|
|
|
|
|
|
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(i8vec4), 4); |
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(i8vec4), 4); |
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(u8vec4), 4); |
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(u8vec4), 4); |
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(i16vec4), 8); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(u16vec4), 8); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(ivec4), 16); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(uvec4), 16); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(i64vec4), 32); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(u64vec4), 32); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(i8mat2), 4); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(u8mat2), 4); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(i8mat3), 9); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(u8mat3), 9); |
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(i8mat4), 16); |
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(i8mat4), 16); |
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(u8mat4), 16); |
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(u8mat4), 16); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
LOLUNIT_TEST(TypeSizeInt16) |
|
|
|
|
|
{ |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(i16vec2), 4); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(u16vec2), 4); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(i16vec3), 6); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(u16vec3), 6); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(i16vec4), 8); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(u16vec4), 8); |
|
|
|
|
|
|
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(i16mat2), 8); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(u16mat2), 8); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(i16mat3), 18); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(u16mat3), 18); |
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(i16mat4), 32); |
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(i16mat4), 32); |
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(u16mat4), 32); |
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(u16mat4), 32); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
LOLUNIT_TEST(TypeSizeInt32) |
|
|
|
|
|
{ |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(ivec2), 8); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(uvec2), 8); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(ivec3), 12); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(uvec3), 12); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(ivec4), 16); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(uvec4), 16); |
|
|
|
|
|
|
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(imat2), 16); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(umat2), 16); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(imat3), 36); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(umat3), 36); |
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(imat4), 64); |
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(imat4), 64); |
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(umat4), 64); |
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(umat4), 64); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
LOLUNIT_TEST(TypeSizeInt64) |
|
|
|
|
|
{ |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(i64vec2), 16); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(u64vec2), 16); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(i64vec3), 24); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(u64vec3), 24); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(i64vec4), 32); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(u64vec4), 32); |
|
|
|
|
|
|
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(i64mat2), 32); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(u64mat2), 32); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(i64mat3), 72); |
|
|
|
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(u64mat3), 72); |
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(i64mat4), 128); |
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(i64mat4), 128); |
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(u64mat4), 128); |
|
|
LOLUNIT_ASSERT_EQUAL(sizeof(u64mat4), 128); |
|
|
} |
|
|
} |
|
|