public static void SubdivideFirstFace_CreatesValidMesh([ValueSource("shapeTypes")] ShapeType shape) { var pb = ShapeGenerator.CreateShape(shape); try { var face = pb.facesInternal.FirstOrDefault(); Subdivision.Subdivide(pb, new Face[] { face }); pb.ToMesh(); pb.Refresh(); #if PB_CREATE_TEST_MESH_TEMPLATES TestUtility.SaveAssetTemplate(pb.mesh, pb.name); #endif TestUtility.AssertMeshAttributesValid(pb.mesh); var template = TestUtility.GetAssetTemplate <Mesh>(pb.name); Assert.IsNotNull(template); TestUtility.AssertMeshesAreEqual(template, pb.mesh); } finally { UObject.DestroyImmediate(pb.gameObject); } }