Package

Source Code of MessageTest

import java.net.DatagramPacket;
import java.util.LinkedList;
import junit.framework.TestCase;
import dijjer.io.comm.Message;
import dijjer.io.comm.MessageFilter;
import dijjer.io.comm.MessageType;
import dijjer.util.Buffer;

/**
* Mason : Nov 28, 2004 : 6:35:25 PM
*/

public class MessageTest extends TestCase {

  public static final String VERSION = "$Id: MessageTest.java,v 1.9 2005/04/12 13:04:15 sanity Exp $";

  public void testMessage() throws Exception {
    MessageType request = new MessageType("Request");
    request.addField("boolean", Boolean.class);
    request.addField("byte", Byte.class);
    request.addField("short", Short.class);
    request.addField("int", Integer.class);
    request.addField("string", String.class);
    request.addField("buffer", Buffer.class);
    request.addLinkedListField("list", String.class);
    Message m1 = new Message(request);
    m1.set("boolean", true);
    m1.set("byte", (byte) 15);
    m1.set("short", (short) 32);
    m1.set("int", (int) 64);
    m1.set("string", "gnirts");
    Buffer b = new Buffer(new byte[10]);
    m1.set("buffer", b);
    LinkedList ll = new LinkedList();
    ll.add("one");
    ll.add("two");
    ll.add("three");
    m1.set("list", ll);
    System.out.println("Original: " + m1);
    DatagramPacket dp = m1.encodeToPacket();
    Message m2 = Message.decodeFromPacket(dp);
    System.out.println("Decoded: " + m2);
    MessageFilter filter1 = MessageFilter.create(1000, request).setField("string", "abacus");
    MessageFilter filter2 = MessageFilter.create(1000, request).setField("string", "gnirts");
    assertFalse(filter1.match(m2));
    assertTrue(filter2.match(m2));

    request.unregister();
   
    MessageType shortRequest = new MessageType("Request");
    shortRequest.addField("boolean", Boolean.class);
    shortRequest.addField("byte", Byte.class);
    shortRequest.addField("short", Short.class);
    shortRequest.addField("int", Integer.class);
   
    Message m3 = Message.decodeFromPacket(dp);
    System.out.println("Short decoded: "+m3);
   
    Message m4 = new Message(shortRequest);
    m4.set("boolean", true);
    m4.set("byte", (byte) 15);
    m4.set("short", (short) 32);
    m4.set("int", (int) 64);
   
    DatagramPacket dp2 = m4.encodeToPacket();
   
    shortRequest.unregister();
   
    request = new MessageType("Request");
    request.addField("boolean", Boolean.class);
    request.addField("byte", Byte.class);
    request.addField("short", Short.class);
    request.addField("int", Integer.class);
    request.addField("string", String.class);
    request.addField("buffer", Buffer.class);
    request.addLinkedListField("list", String.class);
   
    Message m5 = Message.decodeFromPacket(dp2);
   
    System.out.println("Long decoded: "+m5);
  }

}
TOP

Related Classes of MessageTest

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.