12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- using System.Collections;
- using System.Collections.Generic;
- using System.IO;
- using NUnit.Framework;
- using UnityEditor;
- using UnityEngine;
- using UnityEngine.TestTools;
- using UnityEngine.UI;
-
- public class ScrollBarTests : IPrebuildSetup
- {
- GameObject m_PrefabRoot;
- const string kPrefabPath = "Assets/Resources/ScrollBarPrefab.prefab";
-
- public void Setup()
- {
- #if UNITY_EDITOR
- var rootGO = new GameObject("rootGo");
-
- var canvasGO = new GameObject("Canvas", typeof(RectTransform), typeof(Canvas));
- canvasGO.transform.SetParent(rootGO.transform);
-
- var scrollBarGo = new GameObject("ScrollBar", typeof(Scrollbar));
- scrollBarGo.transform.SetParent(canvasGO.transform);
-
- if (!Directory.Exists("Assets/Resources/"))
- Directory.CreateDirectory("Assets/Resources/");
-
- PrefabUtility.SaveAsPrefabAsset(rootGO, kPrefabPath);
- GameObject.DestroyImmediate(rootGO);
- #endif
- }
-
- [SetUp]
- public void TestSetup()
- {
- m_PrefabRoot = UnityEngine.Object.Instantiate(Resources.Load("ScrollBarPrefab")) as GameObject;
- }
-
- [Test]
- public void ScrollBarSetValueWithoutNotifyWillNotNotify()
- {
- Scrollbar s = m_PrefabRoot.GetComponentInChildren<Scrollbar>();
- s.value = 0;
-
- bool calledOnValueChanged = false;
-
- s.onValueChanged.AddListener(b => { calledOnValueChanged = true; });
-
- s.SetValueWithoutNotify(1);
-
- Assert.IsTrue(s.value == 1);
- Assert.IsFalse(calledOnValueChanged);
- }
-
- [TearDown]
- public void TearDown()
- {
- GameObject.DestroyImmediate(m_PrefabRoot);
- #if UNITY_EDITOR
- AssetDatabase.DeleteAsset(kPrefabPath);
- #endif
- }
- }
|