KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > jboss > test > txtimer > test > SimpleTimerTestCase


1 /*
2  * JBoss, Home of Professional Open Source
3  * Copyright 2005, JBoss Inc., and individual contributors as indicated
4  * by the @authors tag. See the copyright.txt in the distribution for a
5  * full listing of individual contributors.
6  *
7  * This is free software; you can redistribute it and/or modify it
8  * under the terms of the GNU Lesser General Public License as
9  * published by the Free Software Foundation; either version 2.1 of
10  * the License, or (at your option) any later version.
11  *
12  * This software is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15  * Lesser General Public License for more details.
16  *
17  * You should have received a copy of the GNU Lesser General Public
18  * License along with this software; if not, write to the Free
19  * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
20  * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
21  */

22 package org.jboss.test.txtimer.test;
23
24 import java.util.Date JavaDoc;
25
26 import javax.ejb.Timer JavaDoc;
27 import javax.ejb.TimerService JavaDoc;
28
29 /**
30  * @author Thomas.Diesler@jboss.org
31  * @version $Revision: 37858 $
32  * @since 07-Apr-2004
33  */

34 public class SimpleTimerTestCase extends TimerTestBase
35 {
36    public SimpleTimerTestCase(String JavaDoc name)
37    {
38       super(name);
39    }
40
41    public void testSingleEventDuration() throws Exception JavaDoc
42    {
43       TimedMockObject to = new TimedMockObject();
44       TimerService JavaDoc service = createTimerService(to);
45
46       service.createTimer(500, null);
47       assertEquals("Expected one txtimer", 1, service.getTimers().size());
48       sleep(1000);
49       assertTrue("TimedObject not called", 1 == to.getCallCount());
50       assertEquals("Expected no txtimer", 0, service.getTimers().size());
51    }
52
53    public void testSingleEventExpire() throws Exception JavaDoc
54    {
55       TimedMockObject to = new TimedMockObject();
56       TimerService JavaDoc service = createTimerService(to);
57
58       service.createTimer(new Date JavaDoc(System.currentTimeMillis() + 500), null);
59       assertEquals("Expected one txtimer", 1, service.getTimers().size());
60       sleep(1000);
61       assertTrue("TimedObject not called", 1 == to.getCallCount());
62       assertEquals("Expected no txtimer", 0, service.getTimers().size());
63    }
64
65    public void testMultipleEventDuration() throws Exception JavaDoc
66    {
67       TimedMockObject to = new TimedMockObject();
68       TimerService JavaDoc service = createTimerService(to);
69
70       Timer JavaDoc timer = service.createTimer(500, 1000, null);
71       assertEquals("Expected one txtimer", 1, service.getTimers().size());
72       sleep(2000);
73       assertTrue("TimedObject not called enough", 1 < to.getCallCount());
74
75       timer.cancel();
76       assertEquals("Expected no txtimer", 0, service.getTimers().size());
77    }
78
79    public void testMultipleEventExpire() throws Exception JavaDoc
80    {
81       TimedMockObject to = new TimedMockObject();
82       TimerService JavaDoc service = createTimerService(to);
83
84       Timer JavaDoc timer = service.createTimer(new Date JavaDoc(System.currentTimeMillis() + 500), 500, null);
85       assertEquals("Expected one txtimer", 1, service.getTimers().size());
86       sleep(2000);
87       assertTrue("TimedObject not called enough", 1 < to.getCallCount());
88
89       timer.cancel();
90       assertEquals("Expected no txtimer", 0, service.getTimers().size());
91    }
92
93 }
94
Popular Tags