public void CastPointsValidTarget() { UnityEventListenerMock castResultsChangedMock = new UnityEventListenerMock(); subject.ResultsChanged.AddListener(castResultsChangedMock.Listen); subject.Origin = subject.gameObject; validSurface.transform.position = Vector3.forward * 5f; subject.ManualOnEnable(); Physics.Simulate(Time.fixedDeltaTime); subject.Process(); Vector3 expectedStart = Vector3.zero; Vector3 expectedEnd = validSurface.transform.position - (Vector3.forward * (validSurface.transform.localScale.z / 2f)); Assert.AreEqual(expectedStart, subject.Points[0]); Assert.AreEqual(expectedEnd, subject.Points[1]); Assert.AreEqual(validSurface.transform, subject.TargetHit.Value.transform); Assert.IsTrue(subject.IsTargetHitValid); Assert.IsTrue(castResultsChangedMock.Received); }
public void CastPointsValidTarget() { UnityEventListenerMock castResultsChangedMock = new UnityEventListenerMock(); subject.ResultsChanged.AddListener(castResultsChangedMock.Listen); subject.Origin = subject.gameObject; validSurface.transform.position = Vector3.forward * 5f; subject.ManualOnEnable(); Physics.Simulate(Time.fixedDeltaTime); subject.Process(); Vector3 expectedStart = Vector3.zero; Vector3 expectedEnd = validSurface.transform.position - (Vector3.forward * (validSurface.transform.localScale.z / 2f)); Assert.AreEqual(expectedStart, subject.Points[0]); Assert.AreEqual(expectedEnd, subject.Points[1]); Assert.AreEqual(validSurface.transform, subject.TargetHit.Value.transform); Assert.IsTrue(subject.IsTargetHitValid); Assert.IsTrue(castResultsChangedMock.Received); Assert.AreEqual("{ HitData = { barycentricCoordinate = (1.0, 0.0, 0.0) | Collider = Cube (UnityEngine.BoxCollider) | Distance = 4.5 | Lightmap Coord = (0.0, 0.0) | Normal = (0.0, 0.0, -1.0) | Point = (0.0, 0.0, 4.5) | Rigidbody = [null] | Texture Coord = (0.0, 0.0) | Texture Coord2 = (0.0, 0.0) | Transform = Cube (UnityEngine.Transform) | Triangle Index = -1 } | IsValid = True }", subject.GetEventData().ToString()); }