Initial commit
This commit is contained in:
@@ -0,0 +1,55 @@
|
||||
using System.Collections;
|
||||
using Moq;
|
||||
using NUnit.Framework;
|
||||
using UnityEngine;
|
||||
|
||||
namespace BracerLib.Tests.Objects
|
||||
{
|
||||
public interface ITester
|
||||
{
|
||||
void Test();
|
||||
}
|
||||
|
||||
public class Tester : ITester
|
||||
{
|
||||
public void Test() {}
|
||||
}
|
||||
|
||||
public class MockComponent : MonoBehaviour
|
||||
{
|
||||
private ITester tester;
|
||||
|
||||
public void DoTest()
|
||||
{
|
||||
tester.Test();
|
||||
}
|
||||
}
|
||||
|
||||
public class ObjectMockTests : TestBase
|
||||
{
|
||||
private MockComponent mockComponent;
|
||||
private Mock<ITester> testerMock;
|
||||
|
||||
protected override IEnumerator UnityOneTimeSetUp()
|
||||
{
|
||||
testerMock = new Mock<ITester>();
|
||||
|
||||
var go = new GameObject("mock test obj");
|
||||
mockComponent = go.AddComponent<MockComponent>();
|
||||
RegisterOneTimeTestObject(go);
|
||||
SetReflectedValue(mockComponent, "tester", testerMock.Object);
|
||||
|
||||
yield return null;
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void TestMock()
|
||||
{
|
||||
testerMock.Setup(x => x.Test());
|
||||
|
||||
mockComponent.DoTest();
|
||||
|
||||
testerMock.Verify(x => x.Test(), Times.Once);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user