Package com.starlight.intrepid.spi.mina

Source Code of com.starlight.intrepid.spi.mina.IMessageCodecTest

package com.starlight.intrepid.spi.mina;

import com.starlight.intrepid.message.ChannelInitIMessage;
import com.starlight.intrepid.message.ChannelInitResponseIMessage;
import com.starlight.locale.UnlocalizableTextResourceKey;
import junit.framework.TestCase;
import org.apache.mina.core.buffer.IoBuffer;

import java.util.ArrayList;
import java.util.List;


/**
*
*/
public class IMessageCodecTest extends TestCase {
  public void testChannelInitResponseMessage() throws Exception {
    IoBuffer buffer = IoBuffer.allocate( 10240 );
    buffer.setAutoExpand( true );

    List<ChannelInitResponseIMessage> test_cases =
      new ArrayList<ChannelInitResponseIMessage>();
   
    test_cases.add( new ChannelInitResponseIMessage( 0 ) );
    test_cases.add( new ChannelInitResponseIMessage( 10 ) );
    test_cases.add( new ChannelInitResponseIMessage( Integer.MAX_VALUE ) );
    test_cases.add( new ChannelInitResponseIMessage( 5, null ) );
    test_cases.add( new ChannelInitResponseIMessage( 5,
      new UnlocalizableTextResourceKey( "Blah" ) ) );

    for( ChannelInitResponseIMessage message : test_cases ) {
      buffer.clear();

      IMessageEncoder.encodeChannelInitResponse( message, buffer );
      buffer.flip();
     
      ChannelInitResponseIMessage cloned_message =
        IMessageDecoder.decodeChannelInitResponse( buffer );
     
      assertEquals( message, cloned_message );
    }
  }
 
  public void testChannelInitMessage() throws Exception {
    IoBuffer buffer = IoBuffer.allocate( 10240 );
    buffer.setAutoExpand( true );

    List<ChannelInitIMessage> test_cases =
      new ArrayList<ChannelInitIMessage>();
   
    test_cases.add( new ChannelInitIMessage( 0, null, ( short ) 0 ) );
    test_cases.add( new ChannelInitIMessage( 0, null, Short.MAX_VALUE ) );
    test_cases.add( new ChannelInitIMessage( Integer.MAX_VALUE, null, ( short ) 0 ) );
    test_cases.add( new ChannelInitIMessage( Integer.MAX_VALUE, null, Short.MAX_VALUE ) );
    test_cases.add( new ChannelInitIMessage( 300, null, ( short ) 3 ) );
    test_cases.add( new ChannelInitIMessage( 300, "Hello", ( short ) 3 ) );

    for( ChannelInitIMessage message : test_cases ) {
      buffer.clear();

      IMessageEncoder.encodeChannelInit( message, buffer );
      buffer.flip();
     
      ChannelInitIMessage cloned_message =
        IMessageDecoder.decodeChannelInit( buffer, null );
     
      assertEquals( message, cloned_message );
    }
  }
}
TOP

Related Classes of com.starlight.intrepid.spi.mina.IMessageCodecTest

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.