1   /*
2    *   @(#) $Id: TransportTypeTest.java 210062 2005-07-11 03:52:38Z trustin $
3    *
4    *   Copyright 2004 The Apache Software Foundation
5    *
6    *   Licensed under the Apache License, Version 2.0 (the "License");
7    *   you may not use this file except in compliance with the License.
8    *   You may obtain a copy of the License at
9    *
10   *       http://www.apache.org/licenses/LICENSE-2.0
11   *
12   *   Unless required by applicable law or agreed to in writing, software
13   *   distributed under the License is distributed on an "AS IS" BASIS,
14   *   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15   *   See the License for the specific language governing permissions and
16   *   limitations under the License.
17   *
18   */
19  package org.apache.mina.common;
20  
21  import junit.framework.Assert;
22  import junit.framework.TestCase;
23  
24  /***
25   * Tests {@link TransportType}.
26   * 
27   * @author The Apache Directory Project (dev@directory.apache.org)
28   * @author Trustin Lee (trustin@apache.org)
29   * @version $Rev: 210062 $, $Date: 2005-07-11 12:52:38 +0900 $
30   */
31  public class TransportTypeTest extends TestCase {
32  
33      public static void main(String[] args) {
34          junit.textui.TestRunner.run(TransportTypeTest.class);
35      }
36      
37      public void testRegistration()
38      {
39          TransportType myType = new TransportType( new String[] { "a", "b", "c" }, true );
40          
41          Assert.assertSame( myType, TransportType.getInstance( "a" ) );
42          Assert.assertSame( myType, TransportType.getInstance( "A" ) );
43          Assert.assertSame( myType, TransportType.getInstance( "b" ) );
44          Assert.assertSame( myType, TransportType.getInstance( "B" ) );
45          Assert.assertSame( myType, TransportType.getInstance( "c" ) );
46          Assert.assertSame( myType, TransportType.getInstance( "C" ) );
47          try
48          {
49              TransportType.getInstance( "unknown" );
50              Assert.fail();
51          }
52          catch( IllegalArgumentException e )
53          {
54              // ignore
55          }
56          
57          try
58          {
59              new TransportType( new String[] { "A" }, false );
60              Assert.fail();
61          }
62          catch( IllegalArgumentException e )
63          {
64              // ignore
65          }
66      }
67  
68  }