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.1 $ 23 */ 24 public class RangeStatisticTest extends StatisticTestSupport { 25 26 public void testStatistic() throws Exception { 27 RangeStatisticImpl stat = new RangeStatisticImpl("myRange", "millis", "myDescription"); 28 assertStatistic(stat, "myRange", "millis", "myDescription"); 29 30 assertRangeStatistic(stat); 31 } 32 33 protected void assertRangeStatistic(RangeStatisticImpl stat) throws InterruptedException { 34 assertEquals(0, stat.getCurrent()); 35 assertEquals(0, stat.getLowWaterMark()); 36 assertEquals(0, stat.getHighWaterMark()); 37 38 stat.setCurrent(100); 39 assertEquals(100, stat.getCurrent()); 40 assertEquals(100, stat.getLowWaterMark()); 41 assertEquals(100, stat.getHighWaterMark()); 42 43 stat.setCurrent(50); 44 assertEquals(50, stat.getCurrent()); 45 assertEquals(50, stat.getLowWaterMark()); 46 assertEquals(100, stat.getHighWaterMark()); 47 48 stat.setCurrent(200); 49 assertEquals(200, stat.getCurrent()); 50 assertEquals(50, stat.getLowWaterMark()); 51 assertEquals(200, stat.getHighWaterMark()); 52 53 Thread.sleep(500); 54 55 stat.setCurrent(10); 56 assertEquals(10, stat.getCurrent()); 57 assertEquals(10, stat.getLowWaterMark()); 58 assertEquals(200, stat.getHighWaterMark()); 59 60 assertLastTimeNotStartTime(stat); 61 62 System.out.println("Stat is: " + stat); 63 64 stat.reset(); 65 66 assertEquals(0, stat.getCurrent()); 67 assertEquals(0, stat.getLowWaterMark()); 68 assertEquals(0, stat.getHighWaterMark()); 69 70 stat.setCurrent(100); 71 assertEquals(100, stat.getCurrent()); 72 assertEquals(100, stat.getLowWaterMark()); 73 assertEquals(100, stat.getHighWaterMark()); 74 } 75 }