@ContinuousIntegrationTest(estimatedDuration = 0.0) @Test(timeout = 30000) public void testFindMaxVals() { YoVariableRegistry registry = new YoVariableRegistry("TestMinimumJerkTrajectory"); YoMinimumJerkTrajectory minimumJerkTrajectory = new YoMinimumJerkTrajectory("tester", registry); double t = 0.0; double[] maximums = new double[2]; double maxVexpected = 5.625; double maxAexpected = 34.641; double percent = 0.01; minimumJerkTrajectory.setParams(0.0, 0.0, 0.0, 1.5, 0.0, 0.0, 0.0, 0.5); minimumJerkTrajectory.findMaxVelocityAndAccel(t, maximums); if (!MathTools.percentEquals(maxVexpected, maximums[0], percent)) { throw new RuntimeException("TestMinimumJerkTrajectory.testFindMaxVals: Max velocity is wrong: expected=" + maxVexpected + ", actual=" + maximums[0]); } if (!MathTools.percentEquals(maxAexpected, maximums[1], percent)) { throw new RuntimeException("TestMinimumJerkTrajectory.testFindMaxVals: Max accel is wrong: expected=" + maxAexpected + ", actual=" + maximums[1]); } }
@Ignore @ContinuousIntegrationTest(estimatedDuration = 0.1, categoriesOverride = IntegrationCategory.EXCLUDE) @Test(timeout=300000) public void testTimeExtension() { YoVariableRegistry registry = new YoVariableRegistry("TestMinimumJerkTrajectory"); YoMinimumJerkTrajectory minimumJerkTrajectory = new YoMinimumJerkTrajectory("tester", registry); double t = 0.0; double maxV = 5.0; double maxA = 10.0; double expectedTime = 0.930605; minimumJerkTrajectory.setParams(0.0, 0.0, 0.0, 1.5, 0.0, 0.0, 0.0, 0.0); double newTime = minimumJerkTrajectory.timeExtension(t, maxV, maxA, true); if (!MathTools.percentEquals(expectedTime, newTime, 0.01)) { throw new RuntimeException("TestMinimumJerkTrajectory.testTimeExtension: Returned desired time= " + newTime + ", expected= " + expectedTime); } }