2
* Copyright 2003-2010 Terracotta, Inc.
2
* Copyright Terracotta, Inc.
4
4
* Licensed under the Apache License, Version 2.0 (the "License");
5
5
* you may not use this file except in compliance with the License.
41
42
* Tests Serialization and SoftReferences in EventMessage
43
44
* @author Greg Luck
44
* @version $Id: EventMessageTest.java 3409 2011-01-04 03:36:52Z gluck $
45
* @version $Id: EventMessageTest.java 5631 2012-05-10 08:31:33Z teck $
46
47
public class EventMessageTest {
80
81
public void testSerialization() throws IOException, ClassNotFoundException {
82
EventMessage eventMessage = new EventMessage(EventMessage.PUT, "key", new Element("key", "element"));
83
RmiEventMessage eventMessage = new RmiEventMessage(null, RmiEventType.PUT, "key", new Element("key", "element"));
84
85
ByteArrayOutputStream bout = new ByteArrayOutputStream();
85
86
ObjectOutputStream oos = new ObjectOutputStream(bout);
86
87
oos.writeObject(eventMessage);
87
88
byte[] serializedValue = bout.toByteArray();
89
EventMessage eventMessage2 = null;
90
RmiEventMessage eventMessage2 = null;
90
91
ByteArrayInputStream bin = new ByteArrayInputStream(serializedValue);
91
92
ObjectInputStream ois = new ObjectInputStream(bin);
92
eventMessage2 = (EventMessage) ois.readObject();
93
eventMessage2 = (RmiEventMessage) ois.readObject();
95
96
//Check after Serialization
96
97
assertEquals("key", eventMessage2.getSerializableKey());
97
98
assertEquals("element", eventMessage2.getElement().getObjectValue());
98
assertEquals(EventMessage.PUT, eventMessage2.getEvent());
99
assertTrue(eventMessage2.isValid());
99
assertEquals(RmiEventType.PUT, eventMessage2.getType());