Skip to content

Commit 3dca0e9

Browse files
committed
Added referenced type tests
1 parent 10c31de commit 3dca0e9

1 file changed

Lines changed: 34 additions & 0 deletions

File tree

UnityFileSystem.Tests/UnityFileSystemTests.cs

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
using System;
22
using System.IO;
3+
using System.Linq;
34
using System.Text;
45
using NUnit.Framework;
56

@@ -457,5 +458,38 @@ int ProcessNode(TypeTreeNode node)
457458
Assert.Greater(count, 1);
458459
}
459460
}
461+
462+
[Test]
463+
public void GetRefTypeTypeTree_InvalidFQN_ThrowsException()
464+
{
465+
Assert.Throws<ArgumentException>(() => serializedFile.GetRefTypeTypeTreeRoot("this", "is", "wrong"));
466+
}
467+
468+
[Test]
469+
public void GetRefTypeTree_ValidSerializedFile_ReturnNode()
470+
{
471+
TypeTreeNode node = null;
472+
473+
Assert.DoesNotThrow(() => node = serializedFile.GetRefTypeTypeTreeRoot("SerializeReferencePolymorphismExample/Apple", "", "Assembly-CSharp"));
474+
Assert.NotNull(node);
475+
}
476+
477+
[Test]
478+
public void GetTypeTreeNodeInfo_RefTypeTypeTree_ReturnExpectedValues()
479+
{
480+
var node = serializedFile.GetRefTypeTypeTreeRoot("SerializeReferencePolymorphismExample/Apple", "",
481+
"Assembly-CSharp");
482+
483+
Assert.AreEqual(2, node.Children.Count);
484+
Assert.AreEqual("Apple", node.Type);
485+
Assert.AreEqual("Base", node.Name);
486+
487+
Assert.AreEqual("int", node.Children[0].Type);
488+
Assert.AreEqual("m_Data", node.Children[0].Name);
489+
Assert.AreEqual(4, node.Children[0].Size);
490+
491+
Assert.AreEqual("string", node.Children[1].Type);
492+
Assert.AreEqual("m_Description", node.Children[1].Name);
493+
}
460494
}
461495
}

0 commit comments

Comments
 (0)