RootCanvasTests.cs 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. using NUnit.Framework;
  2. using UnityEngine;
  3. [Category("Canvas")]
  4. public class RootCanvasTests : TestBehaviourBase<UnityEngine.Canvas>
  5. {
  6. // A simple nested canvas hierarchy
  7. // m_TestObject
  8. // └ rootCanvasChild
  9. // └ emptyChildGameObject
  10. // └ baseCanvas
  11. private UnityEngine.Canvas rootCanvasChild;
  12. private GameObject emptyChildGameObject;
  13. private UnityEngine.Canvas baseCanvas;
  14. [SetUp]
  15. public override void TestSetup()
  16. {
  17. base.TestSetup();
  18. var rootChildGO = new GameObject("root child");
  19. rootCanvasChild = rootChildGO.AddComponent<Canvas>();
  20. emptyChildGameObject = new GameObject("empty");
  21. var baseGO = new GameObject("base");
  22. baseCanvas = baseGO.AddComponent<Canvas>();
  23. baseCanvas.transform.SetParent(emptyChildGameObject.transform);
  24. emptyChildGameObject.transform.SetParent(rootChildGO.transform);
  25. rootChildGO.transform.SetParent(m_TestObject.transform);
  26. }
  27. [Test]
  28. public void IsRootCanvasTest()
  29. {
  30. Assert.IsFalse(baseCanvas.isRootCanvas);
  31. Assert.IsFalse(rootCanvasChild.isRootCanvas);
  32. Assert.IsTrue(m_TestObject.isRootCanvas);
  33. }
  34. [Test]
  35. public void CorrectRootCanvasReturned()
  36. {
  37. Assert.AreEqual(m_TestObject, m_TestObject.rootCanvas);
  38. Assert.AreEqual(m_TestObject, rootCanvasChild.rootCanvas);
  39. Assert.AreEqual(m_TestObject, baseCanvas.rootCanvas);
  40. }
  41. [Test]
  42. public void IsNotRootCanvasWhenDisabled()
  43. {
  44. baseCanvas.enabled = false;
  45. Assert.IsFalse(baseCanvas.isRootCanvas);
  46. }
  47. }