Add concrete component script field support
This commit is contained in:
@@ -41,6 +41,7 @@ TEST(ScriptComponent_Test, SerializeRoundTripPreservesMetadataAndFields) {
|
||||
ASSERT_TRUE(original.GetFieldStorage().SetFieldValue("DisplayName", std::string("Hero=One;Ready|100%")));
|
||||
ASSERT_TRUE(original.GetFieldStorage().SetFieldValue("MoveSpeed", 6.25f));
|
||||
ASSERT_TRUE(original.GetFieldStorage().SetFieldValue("Target", GameObjectReference{9988}));
|
||||
ASSERT_TRUE(original.GetFieldStorage().SetFieldValue("TargetCamera", ComponentReference{9988, 0}));
|
||||
|
||||
std::ostringstream stream;
|
||||
original.Serialize(stream);
|
||||
@@ -52,6 +53,7 @@ TEST(ScriptComponent_Test, SerializeRoundTripPreservesMetadataAndFields) {
|
||||
std::string displayName;
|
||||
float moveSpeed = 0.0f;
|
||||
GameObjectReference target;
|
||||
ComponentReference targetCamera;
|
||||
|
||||
EXPECT_EQ(restored.GetScriptComponentUUID(), original.GetScriptComponentUUID());
|
||||
EXPECT_EQ(restored.GetAssemblyName(), "GameScripts.Runtime");
|
||||
@@ -61,9 +63,11 @@ TEST(ScriptComponent_Test, SerializeRoundTripPreservesMetadataAndFields) {
|
||||
EXPECT_TRUE(restored.GetFieldStorage().TryGetFieldValue("DisplayName", displayName));
|
||||
EXPECT_TRUE(restored.GetFieldStorage().TryGetFieldValue("MoveSpeed", moveSpeed));
|
||||
EXPECT_TRUE(restored.GetFieldStorage().TryGetFieldValue("Target", target));
|
||||
EXPECT_TRUE(restored.GetFieldStorage().TryGetFieldValue("TargetCamera", targetCamera));
|
||||
EXPECT_EQ(displayName, "Hero=One;Ready|100%");
|
||||
EXPECT_FLOAT_EQ(moveSpeed, 6.25f);
|
||||
EXPECT_EQ(target, GameObjectReference{9988});
|
||||
EXPECT_EQ(targetCamera, (ComponentReference{9988, 0}));
|
||||
}
|
||||
|
||||
TEST(ScriptComponent_Test, ComponentFactoryRegistryCreatesScriptComponents) {
|
||||
|
||||
Reference in New Issue
Block a user