暫無描述
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

AssertionFailureOnOutputVertexCount.cs 1.5KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. using NUnit.Framework;
  2. using UnityEngine;
  3. using UnityEngine.UI;
  4. using UnityEngine.TestTools;
  5. using UnityEditor.SceneManagement;
  6. using UnityEditor;
  7. public class AssertionFailureOnOutputVertexCount
  8. {
  9. const string scenePath = "Assets/AssertionFailureOnOutputVertexCountTestScene.unity";
  10. [Test]
  11. public void AssertionFailureOnOutputVertexCountTest()
  12. {
  13. var newScene = EditorSceneManager.NewScene(UnityEditor.SceneManagement.NewSceneSetup.DefaultGameObjects, UnityEditor.SceneManagement.NewSceneMode.Single);
  14. var canvasMaster = new GameObject("Canvas", typeof(Canvas), typeof(CanvasScaler), typeof(GraphicRaycaster));
  15. var canvasChild = new GameObject("Canvas Child", typeof(Canvas), typeof(CanvasScaler), typeof(GraphicRaycaster));
  16. canvasChild.transform.SetParent(canvasMaster.transform);
  17. var panel1 = new GameObject("Panel", typeof(CanvasRenderer), typeof(UnityEngine.UI.Image));
  18. panel1.transform.SetParent(canvasMaster.transform);
  19. var panel2 = new GameObject("Panel", typeof(CanvasRenderer), typeof(UnityEngine.UI.Image));
  20. panel2.transform.SetParent(canvasChild.transform);
  21. // Saving a scene would trigger the error case 893551
  22. EditorSceneManager.SaveScene(newScene, scenePath);
  23. Debug.Log("Success");
  24. LogAssert.Expect(LogType.Log, "Success");
  25. }
  26. [TearDown]
  27. public void TearDown()
  28. {
  29. #if UNITY_EDITOR
  30. AssetDatabase.DeleteAsset(scenePath);
  31. #endif
  32. }
  33. }