Package org.codehaus.activemq.message

Source Code of org.codehaus.activemq.message.ConsumerInfoReaderTest

/*
* Created on Mar 8, 2004
*
* To change the template for this generated file go to
* Window - Preferences - Java - Code Generation - Code and Comments
*/
package org.codehaus.activemq.message;

import org.codehaus.activemq.message.ActiveMQDestination;
import org.codehaus.activemq.message.ActiveMQTopic;
import org.codehaus.activemq.message.ConsumerInfo;
import org.codehaus.activemq.message.ConsumerInfoReader;
import org.codehaus.activemq.message.ConsumerInfoWriter;
import org.codehaus.activemq.message.Packet;

import junit.framework.TestCase;

/**
*
* To change the template for this generated type comment go to
* Window - Preferences - Java - Code Generation - Code and Comments
*/
public class ConsumerInfoReaderTest extends TestCase
{
  private String consumerId;
  private ActiveMQDestination destination;
  private String clientId;
  private String subscriberName;
  private String selector;
  private long startTime;
  private boolean started;
  private int consumerNo;
    private int prefetchNumber;

  public static void main(String[] args)
  {
    junit.textui.TestRunner.run(ConsumerInfoReaderTest.class);
  }

  /*
   * @see TestCase#setUp()
   */
  protected void setUp() throws Exception
  {
    super.setUp();
    this.consumerId = "testConsumerId";
    this.clientId = "testclientId";
    this.subscriberName = "testsubscriberName";
    this.selector = "testselector";
    this.destination = new ActiveMQTopic("testtopic");
    this.startTime = System.currentTimeMillis();
    this.started = true;
    this.consumerNo = 3;
        this.prefetchNumber = 13;
  }

  /*
   * @see TestCase#tearDown()
   */
  protected void tearDown() throws Exception
  {
    super.tearDown();
  }

  /**
   * Constructor for ConsumerInfoReaderTest.
   * @param arg0
   */
  public ConsumerInfoReaderTest(String arg0)
  {
    super(arg0);
  }

  public void testGetPacketType()
  {
    ConsumerInfoReader reader = new ConsumerInfoReader();
    assertTrue(reader.getPacketType()==Packet.CONSUMER_INFO);
  }

  public void testReadPacket()
  {
    ConsumerInfo info = new ConsumerInfo();
    info.setId(this.consumerId);
    info.setConsumerNo(this.consumerNo);
        info.setPrefetchNumber(this.prefetchNumber);
    info.setClientId(this.clientId);
    info.setConsumerName(this.subscriberName);
    info.setSelector(this.selector);
    info.setDestination(this.destination);
    info.setStartTime(this.startTime);
    info.setStarted(this.started);
   
    ConsumerInfoWriter writer = new ConsumerInfoWriter();
    ConsumerInfoReader reader = new ConsumerInfoReader();
    try {
    byte[] data = writer.writePacketToByteArray(info);
    ConsumerInfo testInfo = (ConsumerInfo) reader.readPacketFromByteArray(data);
   
      assertTrue(testInfo.getId().equals(this.consumerId));
      assertTrue(testInfo.getConsumerNo()==this.consumerNo);
            assertTrue(testInfo.getPrefetchNumber() == this.prefetchNumber);
      assertTrue(testInfo.getClientId().equals(this.clientId));
      assertTrue(testInfo.getConsumerName().equals(this.subscriberName));
      assertTrue(testInfo.getSelector().equals(this.selector));
      assertTrue(testInfo.getDestination().equals(this.destination));
      assertTrue(testInfo.getStartTime() == this.startTime);
      assertTrue(testInfo.isStarted()==this.started);
    }catch(Throwable e){
      e.printStackTrace();
      assertTrue(false);
    }
  }
 
  public void testTime(){

    ConsumerInfo info = new ConsumerInfo();
    info.setId(this.consumerId);
    info.setConsumerNo(this.consumerNo);
        info.setPrefetchNumber(this.prefetchNumber);
    info.setClientId(this.clientId);
    info.setConsumerName(this.subscriberName);
    info.setSelector(this.selector);
    info.setDestination(this.destination);
    info.setStartTime(this.startTime);
    info.setStarted(this.started);
   
    ConsumerInfoWriter writer = new ConsumerInfoWriter();
    ConsumerInfoReader reader = new ConsumerInfoReader();
    ConsumerInfo testInfo = null;
    try {
      int count = 100000;
      long startTime = System.currentTimeMillis();
      for (int i = 0; i < count; i++){
        byte[] data = writer.writePacketToByteArray(info);
        testInfo = (ConsumerInfo) reader.readPacketFromByteArray(data);
      }
      long finishTime = System.currentTimeMillis();
      long totalTime = finishTime-startTime;
      long ps = (count * 1000)/totalTime;
      System.out.println("Time taken :" + totalTime + " for " + count + "iterations, = " + ps +" per sec.");
     
    }catch(Throwable e){
      e.printStackTrace();
      assertTrue(false);
    }
  }

}
TOP

Related Classes of org.codehaus.activemq.message.ConsumerInfoReaderTest

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.