1 package org.lcsim.geometry.util;
2
3 import junit.framework.Test;
4 import junit.framework.TestCase;
5 import junit.framework.TestSuite;
6
7 import org.lcsim.geometry.util.IDDescriptor.IDException;
8
9
10
11
12
13 public class IDDescriptorTest extends TestCase
14 {
15
16 public IDDescriptorTest(String testName)
17 {
18 super(testName);
19 }
20
21
22 public static Test suite()
23 {
24 return new TestSuite(IDDescriptorTest.class);
25 }
26
27
28 public void testDescriptor() throws IDException
29 {
30 IDDescriptor desc = new IDDescriptor("layer:7,system:3,barrel:3,theta:32:11,phi:11");
31 assertEquals(5,desc.fieldCount());
32
33 assertEquals(0,desc.fieldStart(0));
34 assertEquals(7,desc.fieldLength(0));
35
36 assertEquals(7,desc.fieldStart(1));
37 assertEquals(3,desc.fieldLength(1));
38
39 assertEquals(32,desc.fieldStart(3));
40 assertEquals(11,desc.fieldLength(3));
41
42 assertEquals(43,desc.fieldStart(4));
43 assertEquals(11,desc.fieldLength(4));
44
45 assertEquals("layer",desc.fieldName(0));
46 assertEquals("phi",desc.fieldName(4));
47
48 assertEquals(0,desc.indexOf("layer"));
49 assertEquals(4,desc.indexOf("phi"));
50 }
51
52 public void testSignedDescriptor() throws IDException
53 {
54 IDDescriptor desc = new IDDescriptor("layer:7,system:-3,barrel:3,theta:32:-11,phi:11");
55 assertEquals(5,desc.fieldCount());
56
57 assertEquals(0,desc.fieldStart(0));
58 assertEquals(7,desc.fieldLength(0));
59 assertFalse(desc.isSigned(0));
60
61 assertEquals(7,desc.fieldStart(1));
62 assertEquals(3,desc.fieldLength(1));
63 assertTrue(desc.isSigned(1));
64
65 assertEquals(32,desc.fieldStart(3));
66 assertEquals(11,desc.fieldLength(3));
67 assertTrue(desc.isSigned(3));
68
69 assertEquals(43,desc.fieldStart(4));
70 assertEquals(11,desc.fieldLength(4));
71 assertFalse(desc.isSigned(4));
72
73 assertEquals("layer",desc.fieldName(0));
74 assertEquals("phi",desc.fieldName(4));
75
76 assertEquals(0,desc.indexOf("layer"));
77 assertEquals(4,desc.indexOf("phi"));
78 }
79 }