Initial Commit
This commit is contained in:
parent
53eb92e9af
commit
270ab7d11f
15341 changed files with 700234 additions and 0 deletions
|
@ -0,0 +1,51 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using UnityEngine;
|
||||
using UnityEngine.TestTools;
|
||||
using NUnit.Framework;
|
||||
|
||||
namespace MLAPI.RuntimeTests
|
||||
{
|
||||
public class TickSystemTests: IDisposable
|
||||
{
|
||||
private NetworkTickSystem m_TickSystem = null;
|
||||
private float m_TestDuration = 3.0f;
|
||||
private float m_SleepInterval = 0.001f;
|
||||
private float m_TickInterval = 0.010f;
|
||||
|
||||
public void Dispose()
|
||||
{
|
||||
m_TickSystem.Dispose();
|
||||
m_TickSystem = null;
|
||||
NetworkUpdateLoop.UnregisterLoopSystems();
|
||||
}
|
||||
|
||||
[UnityTest]
|
||||
public IEnumerator VerifyTickSystem()
|
||||
{
|
||||
m_TickSystem = new NetworkTickSystem(m_TickInterval);
|
||||
|
||||
var startTick = m_TickSystem.GetTick();
|
||||
var startTime = Time.unscaledTime;
|
||||
|
||||
var lastTick = startTick;
|
||||
do
|
||||
{
|
||||
var currentTick = m_TickSystem.GetTick();
|
||||
Assert.IsTrue(currentTick >= lastTick); // check monotonicity of ticks
|
||||
lastTick = currentTick;
|
||||
|
||||
yield return new WaitForSeconds(m_SleepInterval);
|
||||
} while (Time.unscaledTime - startTime <= m_TestDuration);
|
||||
|
||||
var endTick = m_TickSystem.GetTick();
|
||||
var endTime = Time.unscaledTime;
|
||||
|
||||
var elapsedTicks = endTick - startTick;
|
||||
var elapsedTime = endTime - startTime;
|
||||
|
||||
var elapsedTicksExpected = (int)(elapsedTime / m_TickInterval);
|
||||
Assert.Less(Math.Abs(elapsedTicksExpected - elapsedTicks), 2); // +/- 1 is OK
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue