Initial Commit
This commit is contained in:
parent
53eb92e9af
commit
270ab7d11f
15341 changed files with 700234 additions and 0 deletions
|
@ -0,0 +1,81 @@
|
|||
using System;
|
||||
using System.Linq;
|
||||
using NUnit.Framework;
|
||||
using UnityEngine;
|
||||
using UnityEngine.EventSystems;
|
||||
using UnityEngine.TestTools;
|
||||
using System.Collections;
|
||||
using System.IO;
|
||||
using UnityEditor;
|
||||
using UnityEngine.UI;
|
||||
using System.Reflection;
|
||||
|
||||
namespace InputfieldTests
|
||||
{
|
||||
public class DesktopInputFieldTests : BaseInputFieldTests, IPrebuildSetup
|
||||
{
|
||||
protected const string kPrefabPath = "Assets/Resources/DesktopInputFieldPrefab.prefab";
|
||||
|
||||
public void Setup()
|
||||
{
|
||||
#if UNITY_EDITOR
|
||||
CreateInputFieldAsset(kPrefabPath);
|
||||
#endif
|
||||
}
|
||||
|
||||
[SetUp]
|
||||
public virtual void TestSetup()
|
||||
{
|
||||
m_PrefabRoot = UnityEngine.Object.Instantiate(Resources.Load("DesktopInputFieldPrefab")) as GameObject;
|
||||
|
||||
FieldInfo inputModule = typeof(EventSystem).GetField("m_CurrentInputModule", BindingFlags.NonPublic | BindingFlags.Instance);
|
||||
inputModule.SetValue(m_PrefabRoot.GetComponentInChildren<EventSystem>(), m_PrefabRoot.GetComponentInChildren<FakeInputModule>());
|
||||
}
|
||||
|
||||
[TearDown]
|
||||
public virtual void TearDown()
|
||||
{
|
||||
GUIUtility.systemCopyBuffer = null;
|
||||
FontUpdateTracker.UntrackText(m_PrefabRoot.GetComponentInChildren<Text>());
|
||||
GameObject.DestroyImmediate(m_PrefabRoot);
|
||||
}
|
||||
|
||||
[OneTimeTearDown]
|
||||
public void OnetimeTearDown()
|
||||
{
|
||||
#if UNITY_EDITOR
|
||||
AssetDatabase.DeleteAsset(kPrefabPath);
|
||||
#endif
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void FocusOnPointerClickWithLeftButton()
|
||||
{
|
||||
InputField inputField = m_PrefabRoot.GetComponentInChildren<InputField>();
|
||||
PointerEventData data = new PointerEventData(m_PrefabRoot.GetComponentInChildren<EventSystem>());
|
||||
data.button = PointerEventData.InputButton.Left;
|
||||
inputField.OnPointerClick(data);
|
||||
|
||||
MethodInfo lateUpdate = typeof(InputField).GetMethod("LateUpdate", BindingFlags.NonPublic | BindingFlags.Instance);
|
||||
lateUpdate.Invoke(inputField, null);
|
||||
|
||||
Assert.IsTrue(inputField.isFocused);
|
||||
}
|
||||
|
||||
[UnityTest]
|
||||
public IEnumerator DoesNotFocusOnPointerClickWithRightOrMiddleButton()
|
||||
{
|
||||
InputField inputField = m_PrefabRoot.GetComponentInChildren<InputField>();
|
||||
PointerEventData data = new PointerEventData(m_PrefabRoot.GetComponentInChildren<EventSystem>());
|
||||
data.button = PointerEventData.InputButton.Middle;
|
||||
inputField.OnPointerClick(data);
|
||||
yield return null;
|
||||
|
||||
data.button = PointerEventData.InputButton.Right;
|
||||
inputField.OnPointerClick(data);
|
||||
yield return null;
|
||||
|
||||
Assert.IsFalse(inputField.isFocused);
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue