public void AngleOfReach_ReturnsCorrectResponseWhenNoAnglesExist() { // arrange float speed = 5; float targetHeight = -20; float distance = 89.709227069098f; // act float[] angles = PMath.AngleOfReach(speed, distance, targetHeight); // assert Assert.AreEqual(Mathf.NegativeInfinity, angles[0]); Assert.AreEqual(Mathf.NegativeInfinity, angles[1]); }
public void AngleOfReach_ReturnsCorrectAngles() { // prereq Approx_Works(); // arrange float speed = 30; float angleLow = 17.63152f; // deg float angleHigh = 59.83967f; // deg float targetHeight = -20; float distance = 90; // act float[] angles = PMath.AngleOfReach(speed, distance, targetHeight); angles[0] *= Mathf.Rad2Deg; angles[1] *= Mathf.Rad2Deg; // assert Assert.IsTrue(PMath.Approx(angleLow, angles[0], 5), "[0]: " + TestHelper.ShowVariables(angleLow, angles[0])); Assert.IsTrue(PMath.Approx(angleHigh, angles[1], 5), "[1]: " + TestHelper.ShowVariables(angleHigh, angles[1])); }