mirror of
https://github.com/vrm-c/UniVRM.git
synced 2026-08-26 21:04:14 -05:00
Add test cases for validating null mesh
This commit is contained in:
@@ -76,5 +76,53 @@ namespace UniGLTF
|
||||
ScriptableObject.DestroyImmediate(validator);
|
||||
}
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void NoMeshTest()
|
||||
{
|
||||
var validator = ScriptableObject.CreateInstance<MeshExportValidator>();
|
||||
var root = new GameObject("root");
|
||||
|
||||
try
|
||||
{
|
||||
var child = GameObject.CreatePrimitive(PrimitiveType.Cube);
|
||||
child.transform.SetParent(root.transform);
|
||||
// remove MeshFilter
|
||||
Component.DestroyImmediate(child.GetComponent<MeshFilter>());
|
||||
|
||||
validator.SetRoot(root, MeshExportSettings.Default);
|
||||
var vs = validator.Validate(root);
|
||||
Assert.True(vs.All(x => x.CanExport));
|
||||
}
|
||||
finally
|
||||
{
|
||||
GameObject.DestroyImmediate(root);
|
||||
ScriptableObject.DestroyImmediate(validator);
|
||||
}
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void NullMeshTest()
|
||||
{
|
||||
var validator = ScriptableObject.CreateInstance<MeshExportValidator>();
|
||||
var root = new GameObject("root");
|
||||
|
||||
try
|
||||
{
|
||||
var child = GameObject.CreatePrimitive(PrimitiveType.Cube);
|
||||
child.transform.SetParent(root.transform);
|
||||
// set null
|
||||
child.GetComponent<MeshFilter>().sharedMesh = null;
|
||||
|
||||
validator.SetRoot(root, MeshExportSettings.Default);
|
||||
var vs = validator.Validate(root);
|
||||
Assert.True(vs.All(x => x.CanExport));
|
||||
}
|
||||
finally
|
||||
{
|
||||
GameObject.DestroyImmediate(root);
|
||||
ScriptableObject.DestroyImmediate(validator);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user