Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

Source code: org/activemq/io/impl/TransactionInfoReaderTest.java


1   /*
2    * Created on Mar 8, 2004
3    *
4    * To change the template for this generated file go to
5    * Window - Preferences - Java - Code Generation - Code and Comments
6    */
7   package org.activemq.io.impl;
8   
9   import org.activemq.message.Packet;
10  import org.activemq.message.PacketTestSupport;
11  import org.activemq.message.TransactionInfo;
12  
13  
14  /**
15   * @version $Revision: 1.1.1.1 $
16   */
17  public class TransactionInfoReaderTest extends PacketTestSupport {
18      private String TransactionId;
19      private int type;
20  
21      public static void main(String[] args) {
22          junit.textui.TestRunner.run(TransactionInfoReaderTest.class);
23      }
24  
25      /*
26       * @see TestCase#setUp()
27       */
28      protected void setUp() throws Exception {
29          super.setUp();
30          this.TransactionId = "testTransactionId";
31          this.type = 113;
32      }
33  
34  
35      public void testGetPacketType() {
36          TransactionInfoReader reader = new TransactionInfoReader();
37          assertTrue(reader.getPacketType() == Packet.TRANSACTION_INFO);
38      }
39  
40      public void testReadPacket() {
41          TransactionInfo info = (TransactionInfo) createPacket();
42  
43          TransactionInfoWriter writer = new TransactionInfoWriter();
44          TransactionInfoReader reader = new TransactionInfoReader();
45          try {
46              byte[] data = writer.writePacketToByteArray(info);
47              TransactionInfo testInfo = (TransactionInfo) reader.readPacketFromByteArray(data);
48  
49              assertPacket(testInfo, info);
50          }
51          catch (Throwable e) {
52              e.printStackTrace();
53              assertTrue(false);
54          }
55      }
56  
57      public void testTime() {
58          TransactionInfo info = (TransactionInfo) createPacket();
59  
60          TransactionInfoWriter writer = new TransactionInfoWriter();
61          TransactionInfoReader reader = new TransactionInfoReader();
62          TransactionInfo testInfo = null;
63          try {
64              int count = 100000;
65              long startTime = System.currentTimeMillis();
66              for (int i = 0; i < count; i++) {
67                  byte[] data = writer.writePacketToByteArray(info);
68                  testInfo = (TransactionInfo) reader.readPacketFromByteArray(data);
69              }
70              long finishTime = System.currentTimeMillis();
71              long totalTime = finishTime - startTime;
72              long ps = (count * 1000) / totalTime;
73              System.out.println("Time taken :" + totalTime + " for " + count + "iterations, = " + ps + " per sec.");
74  
75          }
76          catch (Throwable e) {
77              e.printStackTrace();
78              assertTrue(false);
79          }
80      }
81  
82      protected void assertValidPacket(Packet packet) {
83          TransactionInfo testInfo = (TransactionInfo) packet;
84          assertTrue(testInfo.getTransactionId().equals(this.TransactionId));
85          assertTrue(testInfo.getType() == this.type);
86      }
87  
88      protected Packet createPacket() {
89          TransactionInfo info = new TransactionInfo();
90          info.setTransactionId(this.TransactionId);
91          info.setType(this.type);
92          return info;
93      }
94  
95  }