using System; using System.Threading; using NUnit.Framework; using Passer.Control.Core; namespace ControlCore.test { public class Tests { [SetUp] public void Setup() { } [Test] public void Test_Participant() { Participant participant = new("127.0.0.1", 7681); long milliseconds = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds(); long startTime = milliseconds; while (milliseconds < startTime + 7000) { participant.Update(milliseconds); Thread.Sleep(100); milliseconds = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds(); } Assert.Pass(); } [Test] public void Test_SiteServer() { SiteServer siteServer = new(7681); long milliseconds = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds(); long startTime = milliseconds; while (milliseconds < startTime + 7000) { siteServer.Update(milliseconds); Thread.Sleep(100); milliseconds = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds(); } Assert.Pass(); } [Test] public void Test_SiteParticipant() { SiteServer siteServer = new(7681); Participant participant = new("127.0.0.1", 7681); long milliseconds = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds(); long startTime = milliseconds; while (milliseconds < startTime + 1000) { siteServer.Update(milliseconds); participant.Update(milliseconds); Thread.Sleep(100); milliseconds = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds(); } Assert.That(participant.networkId, Is.EqualTo(1)); } [Test] public void Test_ThingMsg() { SiteServer siteServer = new(); Participant participant = new("127.0.0.1"); Thing thing = new() { name = "First Thing", modelUrl = "https://passer.life/extras/ant.jpg" }; long milliseconds = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds(); long startTime = milliseconds; while (milliseconds < startTime + 7000) { siteServer.Update(milliseconds); participant.Update(milliseconds); Thread.Sleep(100); milliseconds = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds(); } Assert.That(participant.networkId, Is.EqualTo(1)); } } }