1   /*
2    * Copyright (c) 2006 Stiftung Deutsches Elektronen-Synchroton,
3    * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY.
4    *
5    * THIS SOFTWARE IS PROVIDED UNDER THIS LICENSE ON AN "../AS IS" BASIS.
6    * WITHOUT WARRANTY OF ANY KIND, EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED
7    * TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR PARTICULAR PURPOSE AND
8    * NON-INFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
9    * FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
10   * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR
11   * THE USE OR OTHER DEALINGS IN THE SOFTWARE. SHOULD THE SOFTWARE PROVE DEFECTIVE
12   * IN ANY RESPECT, THE USER ASSUMES THE COST OF ANY NECESSARY SERVICING, REPAIR OR
13   * CORRECTION. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE.
14   * NO USE OF ANY SOFTWARE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER.
15   * DESY HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS,
16   * OR MODIFICATIONS.
17   * THE FULL LICENSE SPECIFYING FOR THE SOFTWARE THE REDISTRIBUTION, MODIFICATION,
18   * USAGE AND OTHER RIGHTS AND OBLIGATIONS IS INCLUDED WITH THE DISTRIBUTION OF THIS
19   * PROJECT IN THE FILE LICENSE.HTML. IF THE LICENSE IS NOT INCLUDED YOU MAY FIND A COPY
20   * AT HTTP://WWW.DESY.DE/LEGAL/LICENSE.HTM
21   */
22  
23  package de.desy.acop.transport.test;
24  
25  import java.util.StringTokenizer;
26  
27  import de.desy.acop.transport.AccessMode;
28  import de.desy.acop.transport.ConnectionParameters;
29  import junit.framework.TestCase;
30  
31  
32  /**
33   * @author Igor Kriznar (igor.kriznarATcosylab.com)
34   *
35   */
36  public class ConnectionParametersTest extends TestCase {
37  
38  	public void testConnectionParameters() throws Exception {
39  		testConnectionParameters("A/B/C/D/E","A","B","C","D","E",AccessMode.POLL,10);
40  		testConnectionParameters("/B/C/D/E","","B","C","D","E",AccessMode.POLL,10);
41  		testConnectionParameters("////","","","","","",AccessMode.POLL,10);
42  		testConnectionParameters("A/B/C//E","A","B","C","","E",AccessMode.POLL,10);
43  		testConnectionParameters("A/B/C/D/","A","B","C","D","",AccessMode.POLL,10);
44  		
45  		testConnectionParameters("A/B/C/D/D1/D2/E","A","B","C","D/D1/D2","E",AccessMode.POLL,10);
46  	}
47  
48  	public void testConnectionParameters(String rname, String a, String b, String c, String d, String e, AccessMode mode, int rate) throws Exception {
49  
50  		ConnectionParameters p= new ConnectionParameters(rname,mode,rate);
51  		
52  		assertEquals(mode,p.getAccessMode());
53  		assertEquals(rate,p.getAccessRate());
54  		assertEquals(rname,p.getRemoteName());
55  		assertEquals(a,p.getAccessProtocol());
56  		assertEquals(b,p.getDeviceContext());
57  		assertEquals(c,p.getDeviceGroup());
58  		assertEquals(d,p.getDeviceName());
59  		assertEquals(e,p.getDeviceProperty());
60  	}
61  }