1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 package org.hipparchus.optim.univariate;
23
24 import org.hipparchus.exception.MathIllegalArgumentException;
25 import org.junit.Assert;
26 import org.junit.Test;
27
28 public class SimpleUnivariateValueCheckerTest {
29 @Test(expected=MathIllegalArgumentException.class)
30 public void testIterationCheckPrecondition() {
31 new SimpleUnivariateValueChecker(1e-1, 1e-2, 0);
32 }
33
34 @Test
35 public void testIterationCheck() {
36 final int max = 10;
37 final SimpleUnivariateValueChecker checker = new SimpleUnivariateValueChecker(1e-1, 1e-2, max);
38 Assert.assertTrue(checker.converged(max, null, null));
39 Assert.assertTrue(checker.converged(max + 1, null, null));
40 }
41
42 @Test
43 public void testIterationCheckDisabled() {
44 final SimpleUnivariateValueChecker checker = new SimpleUnivariateValueChecker(1e-8, 1e-8);
45
46 final UnivariatePointValuePair a = new UnivariatePointValuePair(1d, 1d);
47 final UnivariatePointValuePair b = new UnivariatePointValuePair(10d, 10d);
48
49 Assert.assertFalse(checker.converged(-1, a, b));
50 Assert.assertFalse(checker.converged(0, a, b));
51 Assert.assertFalse(checker.converged(1000000, a, b));
52
53 Assert.assertTrue(checker.converged(-1, a, a));
54 Assert.assertTrue(checker.converged(-1, b, b));
55 }
56
57 }