1   /*** 
2    * 
3    * Copyright 2004 Protique Ltd
4    * 
5    * Licensed under the Apache License, Version 2.0 (the "License"); 
6    * you may not use this file except in compliance with the License. 
7    * 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.codehaus.activemq.management;
19  
20  
21  /***
22   * @version $Revision: 1.2 $
23   */
24  public class TimeStatisticTest extends StatisticTestSupport {
25  
26      public void testStatistic() throws Exception {
27          TimeStatisticImpl stat = new TimeStatisticImpl("myTimer", "millis", "myDescription");
28          assertStatistic(stat, "myTimer", "millis", "myDescription");
29  
30          assertEquals(0, stat.getCount());
31  
32          stat.addTime(100);
33          assertEquals(1, stat.getCount());
34          assertEquals(100, stat.getMinTime());
35          assertEquals(100, stat.getMaxTime());
36  
37          stat.addTime(403);
38          assertEquals(2, stat.getCount());
39          assertEquals(100, stat.getMinTime());
40          assertEquals(403, stat.getMaxTime());
41  
42          stat.addTime(50);
43          assertEquals(3, stat.getCount());
44          assertEquals(50, stat.getMinTime());
45          assertEquals(403, stat.getMaxTime());
46  
47  
48          assertEquals(553, stat.getTotalTime());
49  
50          Thread.sleep(500);
51  
52          stat.addTime(10);
53  
54          assertLastTimeNotStartTime(stat);
55  
56          System.out.println("Stat is: " + stat);
57  
58          stat.reset();
59  
60          assertEquals(0, stat.getCount());
61          assertEquals(0, stat.getMinTime());
62          assertEquals(0, stat.getMaxTime());
63          assertEquals(0, stat.getTotalTime());
64  
65          stat.addTime(100);
66          assertEquals(1, stat.getCount());
67          assertEquals(100, stat.getMinTime());
68          assertEquals(100, stat.getMaxTime());
69          assertEquals(100, stat.getTotalTime());
70  
71      }
72  }