1 package org
.lwes
.emitter
;
6 import static org
.junit
.Assert
.assertEquals
;
7 import static org
.junit
.Assert
.assertNotNull
;
10 import org
.lwes
.EventSystemException
;
11 import org
.lwes
.db
.EventTemplateDB
;
13 import java
.net
.InetAddress
;
14 import java
.net
.UnknownHostException
;
15 import java
.util
.List
;
17 public class MulticastEventEmitterTest
{
20 public void testMulticastEmitter() throws Exception
{
21 MockMulticastEventEmitter emitter
= new MockMulticastEventEmitter();
22 emitter
.setEmitHeartbeat(true);
23 emitter
.setFrequency(1000l);
24 emitter
.setMulticastAddress(InetAddress
.getByName("224.0.0.69"));
25 emitter
.setMulticastPort(9191);
28 emitter
.emit(createTestEvent());
30 emitter
.emit(createTestEvent());
31 emitter
.emit(createTestEvent());
32 emitter
.emit(createTestEvent());
34 emitter
.emit(createTestEvent());
37 List
<Event
> events
= emitter
.getEvents();
38 assertNotNull(events
);
40 for (int i
= 0; i
< events
.size(); i
++) {
41 Event e
= events
.get(i
);
43 assertEquals("First event was not startup.",
44 "System::Startup", e
.getEventName());
46 else if (i
== events
.size() - 1) {
47 assertEquals("Second to last event was not shutdown",
48 "System::Shutdown", e
.getEventName());
49 assertEquals("Shutdown count was incorrect", 0, e
.getInt64("count"));
50 assertEquals("Shutdown total was incorrect", 6, e
.getInt64("total"));
52 else if ("System::Heartbeat".equals(e
.getEventName())) {
53 if (e
.getInt64("seq") == 1) {
54 assertEquals("Heartbeat count was incorrect", 3, e
.getInt64("count"));
55 assertEquals("Heartbeat total was incorrect", 3, e
.getInt64("total"));
62 public Event
createTestEvent()
63 throws EventSystemException
,
64 UnknownHostException
{
66 EventTemplateDB evtDb
= new EventTemplateDB();
68 Event evt
= new Event("TestEvent", false, evtDb
);
69 evt
.setIPAddress("SenderIP", InetAddress
.getByName("192.168.1.1"));
70 evt
.setUInt16("SenderPort", 9191);
71 evt
.setInt64("ReceiptTime", System
.currentTimeMillis());
72 evt
.setUInt16("SiteID", 0);
73 evt
.setString("field1", "testing");
74 evt
.setInt32("intField1", 256);