1   /*
2    * Licensed to the Apache Software Foundation (ASF) under one or more
3    * contributor license agreements.  See the NOTICE file distributed with
4    * this work for additional information regarding copyright ownership.
5    * The ASF licenses this file to You under the Apache License, Version 2.0
6    * (the "License"); you may not use this file except in compliance with
7    * the License.  You may obtain a copy of the License at
8    *
9    *      http://www.apache.org/licenses/LICENSE-2.0
10   *
11   * Unless required by applicable law or agreed to in writing, software
12   * distributed under the License is distributed on an "AS IS" BASIS,
13   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14   * See the License for the specific language governing permissions and
15   * limitations under the License.
16   */
17  
18  package org.apache.commons.math.estimation;
19  
20  import org.apache.commons.math.estimation.EstimatedParameter;
21  
22  import junit.framework.*;
23  
24  @Deprecated
25  public class EstimatedParameterTest
26    extends TestCase {
27  
28    public EstimatedParameterTest(String name) {
29      super(name);
30    }
31  
32    public void testConstruction() {
33  
34      EstimatedParameter p1 = new EstimatedParameter("p1", 1.0);
35      assertTrue(p1.getName().equals("p1"));
36      checkValue(p1.getEstimate(), 1.0);
37      assertTrue(! p1.isBound());
38  
39      EstimatedParameter p2 = new EstimatedParameter("p2", 2.0, true);
40      assertTrue(p2.getName().equals("p2"));
41      checkValue(p2.getEstimate(), 2.0);
42      assertTrue(p2.isBound());
43  
44    }
45  
46    public void testBound() {
47  
48      EstimatedParameter p = new EstimatedParameter("p", 0.0);
49      assertTrue(! p.isBound());
50      p.setBound(true);
51      assertTrue(p.isBound());
52      p.setBound(false);
53      assertTrue(! p.isBound());
54  
55    }
56  
57    public void testEstimate() {
58  
59      EstimatedParameter p = new EstimatedParameter("p", 0.0);
60      checkValue(p.getEstimate(), 0.0);
61  
62      for (double e = 0.0; e < 10.0; e += 0.5) {
63        p.setEstimate(e);
64        checkValue(p.getEstimate(), e);
65      }
66  
67    }
68  
69    public static Test suite() {
70      return new TestSuite(EstimatedParameterTest.class);
71    }
72  
73    private void checkValue(double value, double expected) {
74      assertTrue(Math.abs(value - expected) < 1.0e-10);
75    }
76  
77  }