change: UI and migrate to gtest
This commit is contained in:
@@ -25,6 +25,7 @@
|
||||
// No engine init required: these wrap pure NodeValue statics.
|
||||
|
||||
#include <assert.h>
|
||||
#include <gtest/gtest.h>
|
||||
#include <math.h>
|
||||
#include <string.h>
|
||||
|
||||
@@ -32,15 +33,15 @@
|
||||
|
||||
static void test_track_count(void)
|
||||
{
|
||||
assert(oakengine_node_value_keyframe_track_count(OAK_NODE_VALUE_INT) ==
|
||||
EXPECT_TRUE(oakengine_node_value_keyframe_track_count(OAK_NODE_VALUE_INT) ==
|
||||
1);
|
||||
assert(oakengine_node_value_keyframe_track_count(OAK_NODE_VALUE_FLOAT) ==
|
||||
EXPECT_TRUE(oakengine_node_value_keyframe_track_count(OAK_NODE_VALUE_FLOAT) ==
|
||||
1);
|
||||
assert(oakengine_node_value_keyframe_track_count(OAK_NODE_VALUE_VEC2) ==
|
||||
EXPECT_TRUE(oakengine_node_value_keyframe_track_count(OAK_NODE_VALUE_VEC2) ==
|
||||
2);
|
||||
assert(oakengine_node_value_keyframe_track_count(OAK_NODE_VALUE_VEC3) ==
|
||||
EXPECT_TRUE(oakengine_node_value_keyframe_track_count(OAK_NODE_VALUE_VEC3) ==
|
||||
3);
|
||||
assert(oakengine_node_value_keyframe_track_count(OAK_NODE_VALUE_VEC4) ==
|
||||
EXPECT_TRUE(oakengine_node_value_keyframe_track_count(OAK_NODE_VALUE_VEC4) ==
|
||||
4);
|
||||
}
|
||||
|
||||
@@ -48,18 +49,18 @@ static void test_pretty_name(void)
|
||||
{
|
||||
char buf[64];
|
||||
|
||||
assert(oakengine_node_value_pretty_type_name(OAK_NODE_VALUE_INT, buf,
|
||||
EXPECT_TRUE(oakengine_node_value_pretty_type_name(OAK_NODE_VALUE_INT, buf,
|
||||
sizeof(buf)) > 0);
|
||||
assert(buf[0] != '\0');
|
||||
EXPECT_TRUE(buf[0] != '\0');
|
||||
|
||||
/* two-phase: query length first */
|
||||
const int len =
|
||||
oakengine_node_value_pretty_type_name(OAK_NODE_VALUE_FLOAT, nullptr,
|
||||
0);
|
||||
assert(len > 0);
|
||||
EXPECT_TRUE(len > 0);
|
||||
|
||||
/* unknown type reports -1 */
|
||||
assert(oakengine_node_value_pretty_type_name(9999, buf, sizeof(buf)) ==
|
||||
EXPECT_TRUE(oakengine_node_value_pretty_type_name(9999, buf, sizeof(buf)) ==
|
||||
-1);
|
||||
}
|
||||
|
||||
@@ -72,17 +73,17 @@ static void test_split_combine_vec3(void)
|
||||
normal.f[2] = 3.0;
|
||||
|
||||
oak_node_value tracks[3] = {{0}};
|
||||
assert(oakengine_node_value_split_to_tracks(OAK_NODE_VALUE_VEC3, &normal,
|
||||
EXPECT_TRUE(oakengine_node_value_split_to_tracks(OAK_NODE_VALUE_VEC3, &normal,
|
||||
tracks, 3) == OAKENGINE_OK);
|
||||
assert(tracks[0].f[0] == 1.0);
|
||||
assert(tracks[1].f[0] == 2.0);
|
||||
assert(tracks[2].f[0] == 3.0);
|
||||
EXPECT_TRUE(tracks[0].f[0] == 1.0);
|
||||
EXPECT_TRUE(tracks[1].f[0] == 2.0);
|
||||
EXPECT_TRUE(tracks[2].f[0] == 3.0);
|
||||
|
||||
oak_node_value back = {0};
|
||||
assert(oakengine_node_value_combine_tracks(OAK_NODE_VALUE_VEC3, tracks,
|
||||
EXPECT_TRUE(oakengine_node_value_combine_tracks(OAK_NODE_VALUE_VEC3, tracks,
|
||||
3, &back) == OAKENGINE_OK);
|
||||
assert(back.type == OAK_NODE_VALUE_VEC3);
|
||||
assert(back.f[0] == 1.0 && back.f[1] == 2.0 && back.f[2] == 3.0);
|
||||
EXPECT_TRUE(back.type == OAK_NODE_VALUE_VEC3);
|
||||
EXPECT_TRUE(back.f[0] == 1.0 && back.f[1] == 2.0 && back.f[2] == 3.0);
|
||||
}
|
||||
|
||||
static void test_split_combine_int(void)
|
||||
@@ -92,17 +93,17 @@ static void test_split_combine_int(void)
|
||||
normal.num = 42;
|
||||
|
||||
oak_node_value track = {0};
|
||||
assert(oakengine_node_value_split_to_tracks(OAK_NODE_VALUE_INT, &normal,
|
||||
EXPECT_TRUE(oakengine_node_value_split_to_tracks(OAK_NODE_VALUE_INT, &normal,
|
||||
&track, 1) == OAKENGINE_OK);
|
||||
/* scalar fields must survive the roundtrip (num, not only f[0]) */
|
||||
assert(track.type == OAK_NODE_VALUE_INT);
|
||||
assert(track.num == 42);
|
||||
EXPECT_TRUE(track.type == OAK_NODE_VALUE_INT);
|
||||
EXPECT_TRUE(track.num == 42);
|
||||
|
||||
oak_node_value back = {0};
|
||||
assert(oakengine_node_value_combine_tracks(OAK_NODE_VALUE_INT, &track, 1,
|
||||
EXPECT_TRUE(oakengine_node_value_combine_tracks(OAK_NODE_VALUE_INT, &track, 1,
|
||||
&back) == OAKENGINE_OK);
|
||||
assert(back.type == OAK_NODE_VALUE_INT);
|
||||
assert(back.num == 42);
|
||||
EXPECT_TRUE(back.type == OAK_NODE_VALUE_INT);
|
||||
EXPECT_TRUE(back.num == 42);
|
||||
}
|
||||
|
||||
static void test_split_combine_rational(void)
|
||||
@@ -113,38 +114,38 @@ static void test_split_combine_rational(void)
|
||||
normal.den = 1001;
|
||||
|
||||
oak_node_value track = {0};
|
||||
assert(oakengine_node_value_split_to_tracks(OAK_NODE_VALUE_RATIONAL,
|
||||
EXPECT_TRUE(oakengine_node_value_split_to_tracks(OAK_NODE_VALUE_RATIONAL,
|
||||
&normal, &track,
|
||||
1) == OAKENGINE_OK);
|
||||
assert(track.type == OAK_NODE_VALUE_RATIONAL);
|
||||
assert(track.num == 30000 && track.den == 1001);
|
||||
EXPECT_TRUE(track.type == OAK_NODE_VALUE_RATIONAL);
|
||||
EXPECT_TRUE(track.num == 30000 && track.den == 1001);
|
||||
|
||||
oak_node_value back = {0};
|
||||
assert(oakengine_node_value_combine_tracks(OAK_NODE_VALUE_RATIONAL,
|
||||
EXPECT_TRUE(oakengine_node_value_combine_tracks(OAK_NODE_VALUE_RATIONAL,
|
||||
&track, 1,
|
||||
&back) == OAKENGINE_OK);
|
||||
assert(back.num == 30000 && back.den == 1001);
|
||||
EXPECT_TRUE(back.num == 30000 && back.den == 1001);
|
||||
}
|
||||
|
||||
static void test_error_paths(void)
|
||||
{
|
||||
oak_node_value v = {0};
|
||||
|
||||
assert(oakengine_node_value_split_to_tracks(OAK_NODE_VALUE_VEC3, nullptr,
|
||||
EXPECT_TRUE(oakengine_node_value_split_to_tracks(OAK_NODE_VALUE_VEC3, nullptr,
|
||||
&v, 1) == OAKENGINE_E_INVALID);
|
||||
assert(oakengine_node_value_split_to_tracks(OAK_NODE_VALUE_VEC3, &v,
|
||||
EXPECT_TRUE(oakengine_node_value_split_to_tracks(OAK_NODE_VALUE_VEC3, &v,
|
||||
nullptr,
|
||||
1) == OAKENGINE_E_INVALID);
|
||||
assert(oakengine_node_value_split_to_tracks(OAK_NODE_VALUE_VEC3, &v, &v,
|
||||
EXPECT_TRUE(oakengine_node_value_split_to_tracks(OAK_NODE_VALUE_VEC3, &v, &v,
|
||||
0) == OAKENGINE_E_INVALID);
|
||||
assert(oakengine_node_value_combine_tracks(OAK_NODE_VALUE_VEC3, nullptr,
|
||||
EXPECT_TRUE(oakengine_node_value_combine_tracks(OAK_NODE_VALUE_VEC3, nullptr,
|
||||
1, &v) == OAKENGINE_E_INVALID);
|
||||
assert(oakengine_node_value_combine_tracks(OAK_NODE_VALUE_VEC3, &v, 1,
|
||||
EXPECT_TRUE(oakengine_node_value_combine_tracks(OAK_NODE_VALUE_VEC3, &v, 1,
|
||||
nullptr) ==
|
||||
OAKENGINE_E_INVALID);
|
||||
}
|
||||
|
||||
int main(void)
|
||||
TEST(OakEngineNodevalue, Main)
|
||||
{
|
||||
test_track_count();
|
||||
test_pretty_name();
|
||||
@@ -152,5 +153,4 @@ int main(void)
|
||||
test_split_combine_int();
|
||||
test_split_combine_rational();
|
||||
test_error_paths();
|
||||
return 0;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user